线程礼让:暂停执行当前线程,转而执行其他线程,但具体执行那个线程,由调度决定(可能依然执行此线程)。
例子:
1 public class ThreadYield { 2 3 public static void main(String[] args) { 4 // TODO Auto-generated method stub 5 Thread t1 = new Thread(){ 6 public void run(){ 7 for(int i=0; i<100; i++){ 8 System.out.println("领导"); 9 } 10 } 11 }; 12 13 Thread t2 = new Thread(){ 14 public void run(){ 15 for(int i=1; i<100; i++){ 16 if(i % 2 == 0) 17 //礼让 18 Thread.yield(); 19 System.out.println("员工"); 20 } 21 } 22 }; 23 24 t1.start(); 25 t2.start(); 26 27 } 28 29 }
结果:
1 领导 2 领导 3 领导 4 领导 5 领导 6 领导 7 领导 8 领导 9 领导 10 领导 11 领导 12 领导 13 领导 14 领导 15 领导 16 领导 17 领导 18 领导 19 领导 20 领导 21 领导 22 领导 23 领导 24 领导 25 领导 26 领导 27 领导 28 领导 29 领导 30 领导 31 领导 32 领导 33 领导 34 领导 35 领导 36 领导 37 领导 38 领导 39 领导 40 领导 41 领导 42 领导 43 领导 44 领导 45 领导 46 领导 47 领导 48 领导 49 领导 50 领导 51 领导 52 领导 53 领导 54 领导 55 领导 56 领导 57 领导 58 领导 59 领导 60 领导 61 领导 62 领导 63 领导 64 领导 65 领导 66 领导 67 领导 68 领导 69 领导 70 领导 71 领导 72 领导 73 领导 74 领导 75 领导 76 领导 77 领导 78 领导 79 领导 80 领导 81 领导 82 领导 83 领导 84 领导 85 领导 86 领导 87 领导 88 领导 89 领导 90 领导 91 领导 92 领导 93 领导 94 领导 95 领导 96 领导 97 领导 98 领导 99 领导 100 领导 101 员工 102 员工 103 员工 104 员工 105 员工 106 员工 107 员工 108 员工 109 员工 110 员工 111 员工 112 员工 113 员工 114 员工 115 员工 116 员工 117 员工 118 员工 119 员工 120 员工 121 员工 122 员工 123 员工 124 员工 125 员工 126 员工 127 员工 128 员工 129 员工 130 员工 131 员工 132 员工 133 员工 134 员工 135 员工 136 员工 137 员工 138 员工 139 员工 140 员工 141 员工 142 员工 143 员工 144 员工 145 员工 146 员工 147 员工 148 员工 149 员工 150 员工 151 员工 152 员工 153 员工 154 员工 155 员工 156 员工 157 员工 158 员工 159 员工 160 员工 161 员工 162 员工 163 员工 164 员工 165 员工 166 员工 167 员工 168 员工 169 员工 170 员工 171 员工 172 员工 173 员工 174 员工 175 员工 176 员工 177 员工 178 员工 179 员工 180 员工 181 员工 182 员工 183 员工 184 员工 185 员工 186 员工 187 员工 188 员工 189 员工 190 员工 191 员工 192 员工 193 员工 194 员工 195 员工 196 员工 197 员工 198 员工 199 员工