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関数がスレッドで呼び出されます。
-
Javaでのyield()メソッドの重要性?
利回り() メソッドは静的です スレッドの方法 クラスとそれは現在実行中のスレッドを停止することができ、同じ優先度の他の待機中のスレッドに機会を与えます。 待機中のスレッドがない場合、またはすべての待機中のスレッドの優先度が低い場合 その後、同じスレッドが実行を継続します。 yield()の利点 方法は、他の待機中のスレッドを実行する機会を得ることです。そのため、現在のスレッドの実行に時間がかかり、プロセッサを他のスレッドに割り当てる場合。 構文 public static void yield() 例 class MyThread extends Thread { &nbs
-
JavaでのisDaemon()メソッドの重要性?
デーモンスレッドは優先度の低いスレッドです バックグラウンドで実行され、ほとんどがガベージコレクション(GC)などのバックグラウンドタスクを実行するためにJVMによって作成されるJavaで。 ユーザースレッドが実行されていない場合、デーモンスレッドが実行されていても、JVMは終了できます。デーモンスレッドの唯一の目的は、ユーザースレッドにサービスを提供することです。 isDaemon() メソッドを使用して、スレッドがデーモンスレッドであるかどうかを判断できます。 構文 Public boolean isDaemon() 例 class SampleThread implements R