Java
 Computer >> コンピューター >  >> プログラミング >> Java

Javaの並行性– sleep()メソッド


睡眠機能

このスリープ関数は、現在実行中のスレッドが、関数にパラメーターとして渡される特定のミリ秒数の間スリープ状態になるようにするために使用されます。スレッドはそのミリ秒数の間実行を停止します。

例を見てみましょう

import java.lang.*;
public class Demo implements Runnable{
   Thread my_t;
   public void run(){
      for (int i = 0; i < 3; i++){
         System.out.println(Thread.currentThread().getName()+ " " + i);
         try{
            Thread.sleep(100);
         }
         catch (Exception e){
            System.out.println(e);
         }
      }
   }
   public static void main(String[] args) throws Exception{
      Thread my_t = new Thread(new Demo());
      my_t.start();
      Thread my_t2 = new Thread(new Demo());
      my_t2.start();
   }
}

出力

Thread-0 0
Thread-1 0
Thread-0 1
Thread-1 1
Thread-0 2
Thread-1 2

Demoという名前のクラスは、Runnableクラスを実装します。新しいスレッドが定義されます。次に、一連の要素を反復処理し、「getName」関数を使用してスレッドの名前を取得する「run」関数が定義されます。 tryブロックでは、sleep関数がスレッドで呼び出され、catchブロックは、例外が発生した場合にそれを出力します。

main関数は、スレッドの2つの新しいインスタンスを作成し、「start」関数を使用して開始されます。ここでも、要素が繰り返され、yield関数がスレッドで呼び出されます。


  1. Javaでのyield()メソッドの重要性?

    利回り() メソッドは静的です スレッドの方法 クラスとそれは現在実行中のスレッドを停止することができ、同じ優先度の他の待機中のスレッドに機会を与えます。 待機中のスレッドがない場合、またはすべての待機中のスレッドの優先度が低い場合 その後、同じスレッドが実行を継続します。 yield()の利点 方法は、他の待機中のスレッドを実行する機会を得ることです。そのため、現在のスレッドの実行に時間がかかり、プロセッサを他のスレッドに割り当てる場合。 構文 public static void yield() 例 class MyThread extends Thread {   &nbs

  2. JavaでのisDaemon()メソッドの重要性?

    デーモンスレッドは優先度の低いスレッドです バックグラウンドで実行され、ほとんどがガベージコレクション(GC)などのバックグラウンドタスクを実行するためにJVMによって作成されるJavaで。 ユーザースレッドが実行されていない場合、デーモンスレッドが実行されていても、JVMは終了できます。デーモンスレッドの唯一の目的は、ユーザースレッドにサービスを提供することです。 isDaemon() メソッドを使用して、スレッドがデーモンスレッドであるかどうかを判断できます。 構文 Public boolean isDaemon() 例 class SampleThread implements R