ThreadLocal を含むクラスを単体テストしようとしていますが、各テストで新しいスレッドを開始して、テストが互いに影響を与えないようにしたいと考えています。しかし、彼らはまだそうしています、そして私はその理由を理解していません.
@Test
public void testThread() {
System.out.println(Thread.currentThread().getId());
new Thread(){
@Override
public void run(){
System.out.println(Thread.currentThread().getId());
}
}.run();
}
出力:
1
1
新しいスレッドが開始されたにもかかわらず、ID が同じである理由を誰かが説明できますか?