Acasă Dezvoltare Ce este o declarație de blocare? - definiție din techopedia

Ce este o declarație de blocare? - definiție din techopedia

Cuprins:

Anonim

Definiție - Ce înseamnă declarația de blocare?

O instrucțiune de blocare, în C #, este o instrucțiune care conține cuvântul cheie „blocare” și este utilizată în aplicațiile multitreadate pentru a vă asigura că thread-ul curent execută un bloc de cod până la completare fără întrerupere de alte thread-uri. Instrucțiunea de blocare obține un blocaj de excludere reciprocă pentru un obiect dat, astfel încât un fir execută blocul de cod simultan și iese din blocul de cod după eliberarea blocajului.

Instrucțiunea de blocare este o construcție exclusivă de blocare folosită pentru a asigura accesul sincronizat la datele partajate în aplicații multithreaded. Ajută la protejarea integrității unei resurse mutabile care este împărtășită de mai multe fire, fără a crea interferențe între aceste fire. Instrucțiunea de blocare poate fi utilizată de un obiect singleton pentru a preveni accesul simultan la datele sale comune de către mai mulți clienți.

Instrucțiunea de blocare este primitivul de sincronizare primar disponibil în biblioteca .NET Framework Class Library. Acesta generează automat coduri consistente și sigure de excepție, care pot face față nevoilor de sincronizare în programele multithreaded. De asemenea, oferă o metodă ușoară pentru a controla sincronizarea prin generarea de cod eficient, care previne erorile care pot fi cauzate de codul scris manual.

Techopedia explică Declarația de blocare

Instrucțiunea de blocare trebuie să fie prevăzută cu un argument de tip de referință, nu de tip valoric. În general, se recomandă blocarea pe un membru de instanță privată sau un membru static privat pentru a proteja datele care sunt partajate între toate instanțele obiectului. Deoarece blocarea pe tipul public sau instanțele care nu se află sub controlul codului pot duce la situații în impas în care mai multe fire așteaptă eliberarea unui singur obiect utilizat pentru o instrucțiune de blocare, acestea trebuie evitate.


Un exemplu de utilizare a instrucțiunii de blocare poate fi o aplicație multithreaded în care un obiect de cont cu o metodă de retragere a unui bilanț folosește declarația de blocare pentru a împiedica mai multe fire să execute aceeași metodă simultan, ceea ce ar putea împinge soldul către un număr negativ. .


Corpul unei declarații de blocare trebuie să fie mic pentru a reduce timpul necesar altor thread-uri care așteaptă pe blocare, scăzând șansele de blocare și minimizând posibilitatea ca o excepție să apară.


Limitările privind utilizarea instrucțiunilor de blocare includ faptul că pot fi utilizate doar cu date care sunt relevante pentru aplicația curentă. Instrucțiunile de blocare nu pot suporta nici un interval de timp.

Această definiție a fost scrisă în contextul C #
Ce este o declarație de blocare? - definiție din techopedia