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

Javaのスレッドクラスのjoin()メソッド


結合関数

joinメソッドは、現在のスレッドが、結合することになっているスレッドが終了するまで待機することを確認します。この関数は、関数が呼び出されたスレッドが終了するまで待機します。

構文

final void join() throws InterruptedException

例を見てみましょう-

public class Demo extends Thread{
   public void run(){
      System.out.println("sample ");
      try{
         Thread.sleep(10);
      }
      catch (InterruptedException ie){
      }
      System.out.println("only ");
   }
   public static void main(String[] args){
      Demo my_obj_1 = new Demo();
      Demo my_obj_2 = new Demo();
      my_obj_1.start();
      System.out.println("The first object has been created and started");
      try{
         System.out.println("In the try block, the first object has been called with the join          function");
         my_obj_1.join();
      }
      catch (InterruptedException ie){
      }
      System.out.println("The second object has been started");
      my_obj_2.start();
   }
}

出力

The first object has been created and started
In the try block, the first object has been called with the join function
sample
only
The second object has been started
sample
only

Demoという名前のクラスは、Threadクラスを拡張します。ここでは、trycatchブロックが定義されている「run」関数が定義されています。ここで、tryブロックでは、sleep関数が呼び出され、catchブロックは空のままになります。 main関数では、Demoオブジェクトの2つのインスタンスが作成されます。最初のオブジェクトが記述され、「結合」関数を使用して呼び出されます。 2番目のオブジェクトでも同じことが行われ、メッセージが適切に表示されます。


  1. JavaでのSwingWorkerクラスの重要性は何ですか?

    SwingWorker クラスを使用すると、非同期を実行できます タスク ワーカースレッド(長時間実行タスクなど)で、イベントディスパッチスレッド(EDT )からSwingコンポーネントを更新します。 ) タスクの結果に基づきます。 Java1.6バージョンで導入されました。 SwingWorkerクラス java.swing.SwingWorker クラスはタスクワーカーであり、時間のかかるタスクをバックグラウンドで実行します。 SwingWorker インスタンスは3つのスレッドと相互作用します。現在 スレッド 、ワーカースレッド 、およびイベントディスパッチスレッド(E

  2. JavaでのSwingUtilitiesクラスの重要性は何ですか?

    Javaでは、Swingコンポーネントが画面に表示された後、それらはイベント処理スレッドと呼ばれる1つのスレッドでのみ操作できます。 。別のブロックにコードを記述し、このブロックにイベントへの参照を与えることができます 処理 スレッド 。 SwingUtilities クラスには、 invokeAndWait()という2つの重要な静的メソッドがあります。 およびinvokeLater() コードのブロックへの参照をイベントに配置するために使用します キュー 。 構文 public static void invokeAndWait(Runnable doRun) throws Interr