「同步」非指線程步調一致,而是強制線程「按序」訪問共享可變資源,避免競態條件。線程衝突 = 多線程同時訪問共享資源導致資料不一致;線程安全 = 無衝突;需用同步手段達到安全。
忙等待(Busy Wait):
Stopwatch sw = Stopwatch.StartNew();
Thread t1 = new Thread(() => { Thread.Sleep(1000); result = 100; });
t1.Start();
Thread.Sleep(500);
while (t1.IsAlive) ; // 空迴圈佔用 CPU 500ms
Console.WriteLine(sw.ElapsedMilliseconds); // ~1500ms
Console.WriteLine(result);

睡眠輪詢:
while (t1.IsAlive) Thread.Sleep(500); // 釋放時間片

雖總時間較長(因睡眠粒度),但釋放了 CPU,適合非即時性要求場景。更優解:使用 EventWaitHandle、Join() 等同步原語。