首页 > 代码库 > 多线程

多线程

例一:最基本的一个多线程例子

package 多线程;
public class 多线程first {
 public static void main(String[] args){
  Thread t1 = new Thread(new MyThread());

//  Thread t1 = new Thread(new MyThread(),"小白线程");
  t1.start();  
 } 
 
}
 class MyThread implements Runnable{
  @Override
  public void run() {
   System.out.println("获取当前线程的名称:"+Thread.currentThread().getName()); 
   }  
 }

例二: 

package 多线程;
public class 多线程second {
 /**
  * sleep方法的原理:
  * 让当前线程进入休眠状态,让出当次执行的CPU时间,但是该线程不丢失任何监视器的所属权。
  *
  */
 public static void main(String[] args) {
   MyThread2 my = new MyThread2();
   Thread t1 = new Thread(my);
   Thread t2 = new Thread(my);
   t1.start();
   t2.start();   
  }
 }

 class MyThread2 implements Runnable{
  @Override
  public void run() {
   for (int i = 0; i < 10; i++) {
    System.out.println(Thread.currentThread().getName()+"-"+i);
    try {
     //让当前线程进入休眠状态
     Thread.sleep(1000);
    } catch (InterruptedException e) {
     e.printStackTrace();
    }
   }
  }
 }

----------

来不及缓冲1秒,就就行了下一个开启线程。

start是开启线程,run是线程里面的一个方法。


 


 

多线程