スレッドを使用してバックグラウンドで計算コストの高いコードを実行しています。このコードは、実行中に進行状況を返します。メインスレッドでこの値を読み取りたいので、ユーザーに進行状況を表示できます
これが私のセットアップです: プロセスクラス:
Public class ProcessThread implements Runnable {
public int progress;
ProcessThread{
}
public void run(){
// Update progress as the processing goes
}
}
そしてメインクラス:
Public class MainClass {
Private ProcessThread myProcessThread;
MainClass{
myProcessThread = new ProcessThread();
(new Thread(myProcessThread)).start();
}
Public void readProcess(){
// Called from anywere in the main thread.
System.out.print("Progress = " + myProcessThread.progress);
}
}
変数をロックする最良の方法 (wait()、notify() などを使用) を知りたかったので、変数の読み取りと書き込みがスレッド セーフになります。
アドバイスをありがとう。
一番