Sobes.tech
Junior — Middle

Hansı iş parçacığı sinxronizasiya mexanizmlərini bilirsiniz və layihələrinizdə istifadə edə bilərsiniz?

sobes.tech Süni İntellekt

AI-dan cavab

C# dilində, iş parçacqlarının sinxronizasiyası üçün müxtəlif mexanizmlər istifadə olunur:

  • lock — kritik kod bölməsini kilidləmək üçün sadə üsul.
  • Mutex — proseslərarası kilidləmə, müxtəlif proseslər arasında girişin sinxronizasiyası lazım olduqda faydalıdır.
  • Semaphore və SemaphoreSlim — müəyyən bir kod bölməsini eyni zamanda icra edən iş parçacığı sayını məhdudlaşdırmağa imkan verir.
  • Monitor — lock əsaslanan daha çevik mexanizm.
  • ManualResetEvent və AutoResetEvent — iş parçacqları arasında siqnalizasiya üçün.
  • System.Collections.Concurrent ad sahəsindən olan birgə işləmə üçün kolleksiyalar — kolleksiyalara iş parçacığı təhlükəsiz giriş təmin edir.

lock istifadə nümunəsi:

private readonly object _lockObj = new object();

public void IncrementCounter()
{
    lock(_lockObj)
    {
        // Kritik bölmə
        counter++;
    }
}