volatile 強制讀寫主記憶體,保證可見性。setPriority() 輔助控制。synchronized 實例方法共享 this 鎖;static synchronized 共享 Class 物件鎖。synchronized,避免效能損耗。synchronized 不被繼承:子類別覆寫父類同步方法時,同步語意不會自動保留。i = i + 1 包含讀、改、寫三步驟,非原子。long/double 甚至連讀寫都非原子(32 位元 JVM 可能拆兩次)。synchronized int read()、synchronized void update())。volatile 適用於單一變數可見性,不保證複合操作原子性。Thread.yield() 主動讓出 CPU,有時比 sleep() 更有效降低爭用。wait() 釋放鎖、sleep() 保持鎖;wait() 僅能在同步區塊內呼叫。wait(timeout) 避免無限期阻塞。PipedWriter/Reader → 連接管道 → 寫入端綁定 Writer → 讀取端綁定 Reader。synchronized 最大副作用是死鎖,唯有謹慎設計(固定鎖順序、超時機制、避免巢狀鎖)可防範。stop()、suspend()、resume()、destroy() —— 已棄用,極易造成資料損壞。掌握這 21 項要點,能避開 90% 以上的多執行緒坑,打穩高併發系統地基。