zoukankan      html  css  js  c++  java
  • 多线程编程

      何为多线程?在月一个程序当中可能在同一时间运行多个任务,这里的每一个任务都可以称为一个线程,再一起同时运行就是多线程了。例如:当我们去浏览一个网页的时候,在浏览网页的同时也还在加载网页,这就是多线程的体现。

      java多线程编程最主要的核心接口和类为:Thread类、Runnable接口、Object类等,他们都在同一个包java.lang中。下面我们来看这些类:

           Thread类:(常用到方法)

      public void static().启动线程,然后调用Thread对象上的run方法。

      public void run();如果Thread对象是使用单独的Runnable目标实例化的,那么run()方法是该Runnable对象调用的。如果我们编写的是继承Thread类的,那么通过对java的了解,我们可以知道继承后是需要重写父类中的方法。

      public final void setName(String name) ; 改变Thread对象的名称,还有获得线程名称的getName()方法。改变线程名称,使之与参数 name 相同。 

      public final void setPriority(int newPriority); 更改线程的优先级。 参数newPriority是设置线程的优先级的,取值范围是1-10;最好的是用Thread.MAX_PRIORITY, Thread.MIN_PRIORITY,Thread. NORM_PRIORITY(分别是最高级10,最低级1和默认的5)

      下面我们来看看如何创建线程的:通过继承Thread类来创建线程

    public class ThreadDemo {
        public static void main(String[] args) {
            Thread1 t1 = new Thread1();//创建Thread对象
            t1.start();//启动线程
        }
    }
    class Thread1 extends Thread {//创建Thread的子类
        public void run() {//重写run方法
            System.out.println("线程启动");
        }
    }

      创建多线程程序:

    public class ThreadDemo {
        public static void main(String[] args) {
            Thread t1 = new Thread(new MyTask(),"线程A");
            t1.start();//启动线程A
            Thread t2 = new Thread(new MyTask(),"线程B");
            t2.start();//启动线程B
        }
    }
    class MyTask implements Runnable{
        public void run(){
            for(int i=0;i<5;i++){
                //Thread.currentThread().getName()获取线程名字
                System.out.println(Thread.currentThread().getName()+"i的值是:"+i);
            }
        }
    }
  • 相关阅读:
    ThreadLocal总结
    zookeeper学习笔记
    安装solr
    VirtualBox安装Centos7
    Solr学习
    Redis缓存会出现的问题?
    面试题目总结
    mysql分库分表
    Java内存模型
    HashMap在多线程中循环链表问题(jdk1.7)
  • 原文地址:https://www.cnblogs.com/gzyfj/p/4455919.html
Copyright © 2011-2022 走看看