メニュー

ループ処理
条件文
値の受け渡し
static修飾子

配列の作成
ArrayListを使う
ArrayListと配列の変換

ファイル関係
ファイル読み込み
ファイル書き込み
オブジェクトのシリアライズ処理
バイナリファイルの入出力

今日の日付の取得

クラス
インターフェース

例外処理

スレッド関係
スレッド処理
スレッド処理の終了を待つ
スレッド間の同期処理

JDBCでMySQLに接続

Swing
フレームを表示
ボタンを配置
トグルボタンを配置
チェックボックスを配置
コンボボックスを配置
ラジオボタンを配置
リストを配置
プログレスバーを配置
テーブルを配置
パネルを配置
メニューバーを配置

JSP
スクリプティング
JavaBeansの利用
POSTデータ取得
Servletからリクエストデータ取得
jsp:forwardタグ
JSP Servlet JavaBeans連携

Servlet
Servletを作成
Postデータ取得

JSF
JavaBeansを利用
dataTableを利用
ボタンにイベントを追加
画面遷移
selectOneListbox
selectBooleanCheckbox

binding
selectManyListbox(bindingで配置)

Struts
Strutsを利用する

トップ
E-Mail
xml

ASP.Netのお勉強
VB.Netのお勉強
phpのお勉強
Excel マクロ・VBAのお勉強
ASP.Netで掲示板を作成しよう
AJAXのお勉強
Webデザインのお勉強
連想書籍検索
世界の観光地検索
路線図
総合サイトCocoaLiz

Valid HTML 4.01 Transitional

スレッド処理の終了を待つ@Java

スレッド処理の終了を待ちます。
スレッドは、カウントの値を1ずつ増やしていく処理です。

最終的なカウントの値を取得したい場合は、
スレッドをスタートした後に、
カウントの値を表示しても意味がありません。

スレッドが終了した後に表示しないといけません。
スレッドは、joinメソッドにより、終了するまで待つことができます。

スレッドが終了したら、カウントの値を表示します。


public class Main {

    private static int count = 0;

    public static void main(String[] args) {

        //スレッドA作成
        Thread threadA = new Thread(new Runnable() {
            public void run() {
                for (int i=0 ;i<100 ;i++) {
                    int tempCount = count;

                    //スリープ処理
                    try {
                        Thread.sleep(i);
                    } catch (Exception ex) {
                        System.out.println(ex.getMessage());
                    }
                    count = tempCount + 1;
                }
            }
        });

        //スレッドAをスタート
        threadA.start();

        try {
            System.out.println("スレッドの終了を待ってます。");

            //スレッドの終了を待つ
            threadA.join();

            System.out.println(String.valueOf(count));
            System.out.println("スレッド終了しました。");
        } catch(Exception ex) {
            System.err.println(ex.getMessage());
        }
    }
}




Copyright (C) Javaのお勉強. All Rights Reserved.