マルチスレッド状態

1、初期状態

2、動作状態

3、遮断状態

4、待ち状態

5、タイムアウト待ち状態

6、終了ステータス

 

 

待機VS睡眠()()

2間の主な違い:

  1. 睡眠()メソッドは、スレッドの静的メソッドであり、待機メソッドは、オブジェクトの一例です
  2. 待機()メソッドは、同期または同期ブロック法と呼ばれなければならない、すなわち、オブジェクトのロックを有していなければなりません。睡眠()メソッドは、この制限がどこかの種を使用することができていません。待機プールにスレッドが、リソースへのアクセスは、次のを待っているように、また、待機()メソッドは、オブジェクトロックの所有権を解放します。睡眠()メソッドは、単純にCPUは、オブジェクトがロックアウト解放しませんなります。
  3. 再び睡眠時間が待機()メソッドはObject.notift / Object.notifyAll通知を待たなければならないが到達したときに再開される場合はスリープ()メソッドは、CPUのタイムスライスを取得するためにした後、待機しているプールを離れて、前に再度CPUのタイムスライスを取得します我々は継続されます。

デーモンの終了時にスレッドとブロックfinnalyコードを実行していない、それはこの操作の実行をブロックfinnalyない上のリソースや他の操作を解放しますが安全ではありません

 

おすすめ

転載: www.cnblogs.com/zquan/p/11279915.html