Dichiarazione di blocco

Autore: Lewis Jackson
Data Della Creazione: 8 Maggio 2021
Data Di Aggiornamento: 15 Maggio 2024
Anonim
Posti di blocco e autocertificazione: cosa si rischia?
Video: Posti di blocco e autocertificazione: cosa si rischia?

Contenuto

Definizione - Cosa significa Dichiarazione di blocco?

Un'istruzione lock, in C #, è un'istruzione che contiene la parola chiave "lock" e viene utilizzata in applicazioni multithread per garantire che il thread corrente esegua un blocco di codice fino al completamento senza interruzione da parte di altri thread. L'istruzione lock ottiene un blocco di esclusione reciproca per un determinato oggetto in modo che un thread esegua il blocco di codice alla volta ed esca dal blocco di codice dopo aver rilasciato il blocco.


L'istruzione lock è un costrutto di blocco esclusivo utilizzato per garantire l'accesso sincronizzato ai dati condivisi in applicazioni multithread. Aiuta a proteggere l'integrità di una risorsa mutabile condivisa da più thread senza creare interferenze tra tali thread. L'istruzione lock può essere utilizzata da un oggetto singleton per impedire l'accesso simultaneo ai suoi dati comuni da parte di più client.

L'istruzione lock è la primitiva di sincronizzazione principale disponibile nella libreria di classi .NET Framework. Genera automaticamente un codice coerente e sicuro per le eccezioni in grado di gestire le esigenze di sincronizzazione nei programmi multithread. Fornisce inoltre un metodo semplice per controllare la sincronizzazione generando un codice efficiente, che impedisce errori che possono essere causati dal codice scritto manualmente.

Un'introduzione a Microsoft Azure e Microsoft Cloud | In questa guida imparerai cos'è il cloud computing e in che modo Microsoft Azure può aiutarti a migrare e gestire la tua azienda dal cloud.

Techopedia spiega la dichiarazione di blocco

L'istruzione lock deve essere fornita con un argomento di tipo di riferimento, non di tipo valore. In generale, si consiglia di bloccare un membro di istanza privato o un membro statico privato per proteggere i dati condivisi tra tutte le istanze dell'oggetto. Poiché il blocco su tipi pubblici o istanze che esulano dal controllo del codice può causare situazioni di deadlock in cui più thread attendono il rilascio di un singolo oggetto utilizzato per un'istruzione di blocco, è necessario evitarli.

Un esempio per l'utilizzo dell'istruzione lock può essere un'applicazione multithread in cui un oggetto account con un metodo per prelevare un saldo utilizza l'istruzione lock per impedire a più thread di eseguire contemporaneamente lo stesso metodo, il che potrebbe portare il saldo a un numero negativo .

Il corpo di un'istruzione lock deve essere piccolo per ridurre il tempo necessario per altri thread in attesa sul lock, riducendo le possibilità di deadlock e minimizzando la possibilità che si verifichi un'eccezione.

Le limitazioni nell'uso delle istruzioni di blocco includono che possono essere utilizzate solo con dati rilevanti per l'applicazione corrente. Le istruzioni di blocco non sono inoltre in grado di supportare un timeout.


Questa definizione è stata scritta nel con di C #