9
ตรวจสอบและล็อค
เมื่อใดจึงเหมาะสมที่จะใช้Monitorคลาสหรือlockคีย์เวิร์ดเพื่อความปลอดภัยของเธรดใน C # แก้ไข: ดูเหมือนว่าจากคำตอบที่ผ่านมาlockนั้นสั้นสำหรับชุดของการโทรไปยังMonitorชั้นเรียน กุญแจล็อคสายสั้นมีไว้เพื่ออะไร? หรือชัดเจนกว่านั้น class LockVsMonitor { private readonly object LockObject = new object(); public void DoThreadSafeSomethingWithLock(Action action) { lock (LockObject) { action.Invoke(); } } public void DoThreadSafeSomethingWithMonitor(Action action) { // What goes here ? } } อัปเดต ขอบคุณทุกคนสำหรับความช่วยเหลือ: ฉันได้โพสต์คำถามอื่นเพื่อติดตามข้อมูลบางส่วนที่คุณให้มา เนื่องจากคุณดูเหมือนจะมีความเชี่ยวชาญในด้านนี้เป็นอย่างดีฉันจึงโพสต์ลิงก์: มีอะไรผิดปกติกับวิธีแก้ปัญหานี้ในการล็อกและจัดการข้อยกเว้นที่ถูกล็อก