คำถามติดแท็ก interlocked

9
ระเหยกับลูกโซ่กับล็อค
สมมติว่าคลาสมีpublic int counterฟิลด์ที่เข้าถึงได้โดยหลายเธรด นี่intเป็นเพียงการเพิ่มหรือลดเท่านั้น หากต้องการเพิ่มฟิลด์นี้ควรใช้วิธีการใดและเพราะเหตุใด lock(this.locker) this.counter++;, Interlocked.Increment(ref this.counter);, เปลี่ยนการปรับปรุงการเข้าถึงการcounterpublic volatile ตอนนี้ที่ผมได้ค้นพบvolatileฉันได้รับการลบหลายงบและการใช้งานของlock Interlockedแต่มีเหตุผลที่จะไม่ทำเช่นนี้หรือไม่?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.