java 測(cè)時(shí)多線程執(zhí)行時(shí)的疑問?
public class Cai implements Runnable {
@Override
public synchronized void run() {
for (int i = 0; i < 100; i++) {
System.out.println(Thread.currentThread().getName()+" : "+i);
}
}
}
public class Run {
@Test
public void test2() throws Exception {
Cai cai = new Cai();
Thread thread = new Thread(cai);
Thread thread2 = new Thread(cai);
Thread thread3 = new Thread(cai);
thread.setName("線程1");
thread2.setName("線程2");
thread3.setName("線程3");
thread.start();
thread2.start();
thread3.start();
}
}
當(dāng)執(zhí)行test2方法時(shí),為什么會(huì)出現(xiàn)如: 線程1循環(huán)0-99,線程2循環(huán)0-10然后程序就結(jié)束了,這是為什么?
線程2沒有執(zhí)行完全,線程3就沒有執(zhí)行到???
ringa_lee
import java.io.*;
class test
{
public static void main (String[] args) throws java.lang.Exception
{
System.out.println("hi");
Cai cai = new Cai();
Thread thread = new Thread(cai);
Thread thread2 = new Thread(cai);
Thread thread3 = new Thread(cai);
thread.setName("線程1");
thread2.setName("線程2");
thread3.setName("線程3");
thread.start();
thread2.start();
thread3.start();
}
}
class Cai implements Runnable {
@Override
public synchronized void run() {
for (int i = 0; i < 100; i++) {
System.out.println(Thread.currentThread().getName()+" : "+i);
}
}
}
hi
線程1 : 0
線程1 : 1
線程1 : 2
線程1 : 3
線程1 : 4
線程1 : 5
線程1 : 6
線程1 : 7
線程1 : 8
線程1 : 9
線程1 : 10
線程1 : 11
線程1 : 12
線程1 : 13
線程1 : 14
線程1 : 15
線程1 : 16
線程1 : 17
線程1 : 18
線程1 : 19
線程1 : 20
線程1 : 21
線程1 : 22
線程1 : 23
線程1 : 24
線程1 : 25
線程1 : 26
線程1 : 27
線程1 : 28
線程1 : 29
線程1 : 30
線程1 : 31
線程1 : 32
線程1 : 33
線程1 : 34
線程1 : 35
線程1 : 36
線程1 : 37
線程1 : 38
線程1 : 39
線程1 : 40
線程1 : 41
線程1 : 42
線程1 : 43
線程1 : 44
線程1 : 45
線程1 : 46
線程1 : 47
線程1 : 48
線程1 : 49
線程1 : 50
線程1 : 51
線程1 : 52
線程1 : 53
線程1 : 54
線程1 : 55
線程1 : 56
線程1 : 57
線程1 : 58
線程1 : 59
線程1 : 60
線程1 : 61
線程1 : 62
線程1 : 63
線程1 : 64
線程1 : 65
線程1 : 66
線程1 : 67
線程1 : 68
線程1 : 69
線程1 : 70
線程1 : 71
線程1 : 72
線程1 : 73
線程1 : 74
線程1 : 75
線程1 : 76
線程1 : 77
線程1 : 78
線程1 : 79
線程1 : 80
線程1 : 81
線程1 : 82
線程1 : 83
線程1 : 84
線程1 : 85
線程1 : 86
線程1 : 87
線程1 : 88
線程1 : 89
線程1 : 90
線程1 : 91
線程1 : 92
線程1 : 93
線程1 : 94
線程1 : 95
線程1 : 96
線程1 : 97
線程1 : 98
線程1 : 99
線程2 : 0
線程2 : 1
線程2 : 2
線程2 : 3
線程2 : 4
線程2 : 5
線程2 : 6
線程2 : 7
線程2 : 8
線程2 : 9
線程2 : 10
線程2 : 11
線程2 : 12
線程2 : 13
線程2 : 14
線程2 : 15
線程2 : 16
線程2 : 17
線程2 : 18
線程2 : 19
線程2 : 20
線程2 : 21
線程2 : 22
線程2 : 23
線程2 : 24
線程2 : 25
線程2 : 26
線程2 : 27
線程2 : 28
線程2 : 29
線程2 : 30
線程2 : 31
線程2 : 32
線程2 : 33
線程2 : 34
線程2 : 35
線程2 : 36
線程2 : 37
線程2 : 38
線程2 : 39
線程2 : 40
線程2 : 41
線程2 : 42
線程2 : 43
線程2 : 44
線程2 : 45
線程2 : 46
線程2 : 47
線程2 : 48
線程2 : 49
線程2 : 50
線程2 : 51
線程2 : 52
線程2 : 53
線程2 : 54
線程2 : 55
線程2 : 56
線程2 : 57
線程2 : 58
線程2 : 59
線程2 : 60
線程2 : 61
線程2 : 62
線程2 : 63
線程2 : 64
線程2 : 65
線程2 : 66
線程2 : 67
線程2 : 68
線程2 : 69
線程2 : 70
線程2 : 71
線程2 : 72
線程2 : 73
線程2 : 74
線程2 : 75
線程2 : 76
線程2 : 77
線程2 : 78
線程2 : 79
線程2 : 80
線程2 : 81
線程2 : 82
線程2 : 83
線程2 : 84
線程2 : 85
線程2 : 86
線程2 : 87
線程2 : 88
線程2 : 89
線程2 : 90
線程2 : 91
線程2 : 92
線程2 : 93
線程2 : 94
線程2 : 95
線程2 : 96
線程2 : 97
線程2 : 98
線程2 : 99
線程3 : 0
線程3 : 1
線程3 : 2
線程3 : 3
線程3 : 4
線程3 : 5
線程3 : 6
線程3 : 7
線程3 : 8
線程3 : 9
線程3 : 10
線程3 : 11
線程3 : 12
線程3 : 13
線程3 : 14
線程3 : 15
線程3 : 16
線程3 : 17
線程3 : 18
線程3 : 19
線程3 : 20
線程3 : 21
線程3 : 22
線程3 : 23
線程3 : 24
線程3 : 25
線程3 : 26
線程3 : 27
線程3 : 28
線程3 : 29
線程3 : 30
線程3 : 31
線程3 : 32
線程3 : 33
線程3 : 34
線程3 : 35
線程3 : 36
線程3 : 37
線程3 : 38
線程3 : 39
線程3 : 40
線程3 : 41
線程3 : 42
線程3 : 43
線程3 : 44
線程3 : 45
線程3 : 46
線程3 : 47
線程3 : 48
線程3 : 49
線程3 : 50
線程3 : 51
線程3 : 52
線程3 : 53
線程3 : 54
線程3 : 55
線程3 : 56
線程3 : 57
線程3 : 58
線程3 : 59
線程3 : 60
線程3 : 61
線程3 : 62
線程3 : 63
線程3 : 64
線程3 : 65
線程3 : 66
線程3 : 67
線程3 : 68
線程3 : 69
線程3 : 70
線程3 : 71
線程3 : 72
線程3 : 73
線程3 : 74
線程3 : 75
線程3 : 76
線程3 : 77
線程3 : 78
線程3 : 79
線程3 : 80
線程3 : 81
線程3 : 82
線程3 : 83
線程3 : 84
線程3 : 85
線程3 : 86
線程3 : 87
線程3 : 88
線程3 : 89
線程3 : 90
線程3 : 91
線程3 : 92
線程3 : 93
線程3 : 94
線程3 : 95
線程3 : 96
線程3 : 97
線程3 : 98
線程3 : 99
我的可以啊,每次都可以