Thread操作
4670 ワード
1.2つのスレッドを開始
2.上記のreadThreadスレッドは比較的時間がかかる(sleepシミュレーション)ため、メインスレッドの実行が完了しているのに、readThreadが実行されていない場合がしばしば発生するので、以下ではメインスレッドがreadThreadを待つように工夫する
スレッドの実行が完了しました:
1 public class ThreadTest {
2
3 public static boolean isRun = false;
4
5 @Test
6 public void mainTest(){
7 System.out.println(Thread.currentThread().getName());
8
9 Thread readThread = new ReadThread();
10 readThread.setName("readThread");
11
12 Thread writeThread = new WriteThread();
13 writeThread.setName("writeThread");
14
15 readThread.start();
16 writeThread.start();
17 }
18 }
19
20 class ReadThread extends Thread{
21 @Override
22 public void run() {
23 try {
24 // , 3
25 // , ,
26 sleep(3000);
27 System.out.println(Thread.currentThread().getName());
28 } catch (InterruptedException e) {
29 e.printStackTrace();
30 }
31 }
32 }
33
34 class WriteThread extends Thread{
35 @Override
36 public void run() {
37 System.out.println(Thread.currentThread().getName());
38 }
39 }
2.上記のreadThreadスレッドは比較的時間がかかる(sleepシミュレーション)ため、メインスレッドの実行が完了しているのに、readThreadが実行されていない場合がしばしば発生するので、以下ではメインスレッドがreadThreadを待つように工夫する
スレッドの実行が完了しました: