เมื่อใดจึงเหมาะสมที่จะใช้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 ?
}
}
อัปเดต
ขอบคุณทุกคนสำหรับความช่วยเหลือ: ฉันได้โพสต์คำถามอื่นเพื่อติดตามข้อมูลบางส่วนที่คุณให้มา เนื่องจากคุณดูเหมือนจะมีความเชี่ยวชาญในด้านนี้เป็นอย่างดีฉันจึงโพสต์ลิงก์: มีอะไรผิดปกติกับวิธีแก้ปัญหานี้ในการล็อกและจัดการข้อยกเว้นที่ถูกล็อก