เมื่อใช้การซิงโครไนซ์ คุณจะซิงโครไนซ์การเข้าถึงทรัพยากรในแอปพลิเคชันแบบมัลติเธรดได้
สามารถใช้ mutex เพื่อซิงโครไนซ์เธรดระหว่างกระบวนการ ใช้เพื่อป้องกันการเรียกใช้บล็อกโค้ดพร้อมกันมากกว่าหนึ่งเธรดในแต่ละครั้ง
คำสั่งล็อค C# ถูกใช้เพื่อให้แน่ใจว่าบล็อกของรหัสทำงานโดยไม่ขัดจังหวะโดยเธรดอื่น ได้การล็อกการยกเว้นร่วมสำหรับออบเจ็กต์ที่กำหนดในช่วงระยะเวลาของการบล็อกโค้ด
เธรดพูลใน C # คือชุดของเธรด ใช้สำหรับทำงานเบื้องหลัง เมื่อเธรดเสร็จสิ้นภารกิจ เธรดจะถูกส่งไปยังคิวซึ่งมีเธรดที่รอทั้งหมดอยู่ วิธีนี้ใช้ซ้ำได้
ให้เราดูวิธีการสร้างเธรดพูล
ประการแรก ใช้เนมสเปซต่อไปนี้ −
using System.Threading;
ตอนนี้ เรียกคลาส threadpool โดยใช้อ็อบเจ็กต์ threadpool เรียกเมธอด QueueUserWorkItem
ThreadPool.QueueUserWorkItem(new WaitCallback(Run));
คลาส Mutex ใน C# เป็นพื้นฐานการซิงโครไนซ์ที่สามารถใช้สำหรับการซิงโครไนซ์ระหว่างกระบวนการได้
ให้เราดูวิธีสร้าง Mutex ใหม่ -
private static Mutex m = new Mutex();