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++;
}
}