JAvaの高度な特性-スレッド1

6324 ワード

  • スレッド(1)cpuがスケジューリングする最小単位(2)プロセス:実行中のアプリケーション(3)1つのプロセスに少なくとも1つのスレッドがあり、このスレッドはjvmによって開始され、メインスレッド(4)スレッドと呼ばれるライフサイクル
       1、      :      new born
       2、  start   :   ready(         )
       3、CPU             running   blocked(sleep/wait(0)->  notify)
       			           ,      
       4、run    :             dead(    :        )
    
  • (5)スレッドを1つ開く方法
    a、         
    
    Thread thread = new Thread(){ 
                  @overridee    
                              Public void run(){
                              ....}
                              };
                              Thread.start() 
    b、       Thread
    
    Class MyThread extends Thread{
    //     
    ...
    //     
    ...
    @override
    Public void run(){
    ....}
    }
    Thread thread = new MyThread ();
    Thread.start();
    c、     Runable  
    
    Class MyRun implents Runable{
      @overridePublic 
      void run(){}
       }
       Runable mr= new MyRun ();
       Thread thread = new Thread(mr);
       Thread.start();
    d、   //     :    
    
    public class MyCall implements Callable<T>{
    //     
    //     
    @override
    Public T call(){
    ...
    }
    }
    Mycall mc = new Mycall(...);
    Future<T> fu = esf.submit(mc);
    T t = fu.get();