代碼:…… //創建了三個線程for(int i = 0; i < 5; i++){lock(this){addSum += 2;Thread.Sleep(1);Console.WriteLine(Thread.CurrentThread.Name + ", 執行第 "+ i + "次, addSum = " + addSum);}}問題: 怎么理解lock(){}中的Sleep(1),如果 線程1進入到lock中執行,遇到sleep(1)就休眠1毫秒,這時候其他線程怎么也能進入lock中執行,lock不是實現線程間的互斥嗎?
- 2 回答
- 0 關注
- 92 瀏覽
添加回答
舉報
0/150
提交
取消