Declarație de blocare

Autor: Lewis Jackson
Data Creației: 8 Mai 2021
Data Actualizării: 15 Mai 2024
Anonim
⚠️ Blindate Rusești ale FR 👉 Continuă Deplasarea Către Teritoriul Ucrainei ☝️
Video: ⚠️ Blindate Rusești ale FR 👉 Continuă Deplasarea Către Teritoriul Ucrainei ☝️

Conţinut

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 fire. Instrucțiunea de blocare obține un blocaj de excludere reciprocă pentru un obiect dat, astfel încât un thread execută blocul de cod la un moment dat ș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 folosită de un obiect singleton pentru a împiedica 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 pentru excepții, 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.

O introducere în Microsoft Azure și Microsoft Cloud | În acest ghid, veți afla despre ce este vorba despre cloud computing și despre cum Microsoft Azure vă poate ajuta să migrați și să conduceți afacerea din cloud.

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 simultan mai multe fire să execute aceeași metodă, 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 relevante pentru aplicația curentă. Instrucțiunile de blocare nu pot suporta nici un interval de timp.


Această definiție a fost scrisă în versiunea lui C #