メイン メソッドで Runnable インターフェイスを実装し、それらのオブジェクトをスレッド プールに渡すクラスのオブジェクトを作成しようとしています。しかし、IDE は非静的変数を読み取るエラーを表示します。これは静的コンテキストから参照できません。つまり、そもそもオブジェクトを作成できませんでした。このコードの何が問題なのか、私にはわかりませんでした。他のすべては正常に動作しますが、このコード行だけがコンパイル エラーを示しています。誰か助けてくれませんか??
package threads;
import java.util.concurrent.*;
public class Tut5 {
public static void main(String[] args) {
ExecutorService exe = Executors.newFixedThreadPool(2);
for(int i=0; i<5; i++) {
Runner5 r5 = new Runner5(i);
exe.submit(r5);
}
exe.shutdown();
System.out.println("All tasks submitted.");
try {
exe.awaitTermination(1, TimeUnit.DAYS);
}
catch(InterruptedException e) {
e.printStackTrace();
}
System.out.println("All tasks completed.");
}
class Runner5 implements Runnable {
private int id;
public Runner5(int id) {
this.id = id;
}
public void run() {
System.out.println("Starting thread: " + id);
try{
Thread.sleep(3000);
}
catch(InterruptedException e) {
e.printStackTrace();
}
System.out.println("Ending thread: " + id);
}
}
}
さよなら @jtahlborn