Sobes.tech
Junior — Middle

Жиптер жана процесстердин синхрондоштуруу негизги механизмдерин тизмелеп бере аласызбы?

sobes.tech AI

AIден жооп

C# тилинде жиптер жана процесстердин синхрондоштуруу негизги механизмдери төмөнкүлөр:

  • lock — башка жиптер үчүн код бөлүгүн блоктоп, ресурска эксклюзивдүү кирүүгө кепилдик берет.
  • Mutex — процесстер аралык блоктоо механизми, ал ар кандай процесстердин киришин синхрондоштууга мүмкүндүк берет.
  • Semaphore жана SemaphoreSlim — бир убакта ресурска кире алчу жиптердин санын чектейт.
  • Monitor — көбүрөөк ийкемдүү блоктоо механизми, күтүүгө жана жиптерди кабарлоого мүмкүндүк берет.
  • AutoResetEvent жана ManualResetEvent — жиптер сигнал күтүп, ишин улантууга мүмкүндүк берет.
  • Interlocked — өзгөрмөлөр үстүндө атомдук операцияларды камсыз кылат, жарыш шарттарын алдын алат.

lock колдонуу мисалы:

private readonly object _locker = new object();

void IncrementCounter()
{
    lock (_locker)
    {
        // критикалык бөлүк
        counter++;
    }
}