System.Threading Spazio dei nomi
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce le classi e le interfacce che consentono la programmazione multithreading. Oltre alle classi per la sincronizzazione delle attività di thread e l'accesso ai dati (Mutex, Monitor, Interlocked, AutoResetEvent e così via), questo spazio dei nomi include una classe ThreadPool che consente di usare un pool di thread forniti dal sistema, nonché una classe Timer che esegue i metodi di callback nei thread del pool di thread.
Classi
AbandonedMutexException |
Eccezione generata quando un thread acquisisce un oggetto Mutex che un altro thread ha abbandonato uscendo senza rilasciarlo. |
AsyncLocal<T> |
Rappresenta dati di ambiente locali rispetto a un flusso di controllo asincrono specificato, ad esempio un metodo asincrono. |
AutoResetEvent |
Rappresenta un evento di sincronizzazione thread che, quando segnalato, rilascia un singolo thread in attesa e quindi reimposta automaticamente. La classe non può essere ereditata. |
Barrier |
Consente a più attività di funzionare in modo cooperativo in un algoritmo in parallelo tramite più fasi. |
BarrierPostPhaseException |
Eccezione generata quando l'azione post-fase di un oggetto Barrier non viene eseguita correttamente. |
CancellationTokenSource |
Segnala a un oggetto CancellationToken che deve essere annullato. |
CompressedStack |
Fornisce metodi per l'impostazione e l'acquisizione dello stack compresso sul thread corrente. La classe non può essere ereditata. |
CountdownEvent |
Rappresenta una primitiva di sincronizzazione segnalata quando il relativo conteggio raggiunge lo zero. |
EventWaitHandle |
Rappresenta un evento di sincronizzazione dei thread. |
EventWaitHandleAcl |
Fornisce un metodo di estensione specifico di Windows per la creazione di oggetti EventWaitHandle con sicurezza basata sull'elenco di controllo di accesso (ACL). |
ExecutionContext |
Gestisce il contesto di esecuzione per il thread corrente. La classe non può essere ereditata. |
HostExecutionContext |
Incapsula e propaga il contesto di esecuzione host fra i thread. |
HostExecutionContextManager |
Fornisce la funzionalità che consente a un host Common Language Runtime di partecipare al flusso, o migrazione, del contesto di esecuzione. |
Interlocked |
Consente di eseguire operazioni atomiche per variabili condivise da più thread. |
LazyInitializer |
Fornisce routine di inizializzazione differita. |
Lock |
Fornisce un meccanismo per ottenere l'esclusione reciproca nelle aree di codice tra thread diversi. |
LockRecursionException |
Eccezione che viene generata quando una voce ricorsiva in un blocco non è compatibile con i criteri di ricorsione per il blocco stesso. |
ManualResetEvent |
Rappresenta un evento di sincronizzazione dei thread che, quando viene segnalato, deve essere reimpostato manualmente. La classe non può essere ereditata. |
ManualResetEventSlim |
Rappresenta un evento di sincronizzazione dei thread che, quando viene segnalato, deve essere reimpostato manualmente. La classe è un'alternativa leggera a ManualResetEvent. |
Monitor |
Fornisce un meccanismo che sincronizza l'accesso agli oggetti. |
Mutex |
Primitiva di sincronizzazione che può essere usata anche per la sincronizzazione interprocesso. |
MutexAcl |
Fornisce un metodo di estensione specifico di Windows per la creazione di oggetti Mutex con sicurezza basata sull'elenco di controllo di accesso (ACL). |
Overlapped |
Fornisce una rappresentazione gestita di una struttura |
PeriodicTimer |
Fornisce un timer periodico che consente di attendere in modo asincrono i tick del timer. |
PreAllocatedOverlapped |
Rappresenta lo stato preallocato per le operazioni I/O sovrapposte native. |
ReaderWriterLock |
Definisce un blocco che supporta writer singoli e lettori multipli. |
ReaderWriterLockSlim |
Rappresenta un blocco usato per gestire l'accesso a una risorsa, consentendo a più thread l'accesso in lettura o l'accesso esclusivo in scrittura. |
RegisteredWaitHandle |
Rappresenta un handle registrato durante la chiamata a RegisterWaitForSingleObject(WaitHandle, WaitOrTimerCallback, Object, UInt32, Boolean). La classe non può essere ereditata. |
Semaphore |
Limita il numero di thread che possono accedere simultaneamente a una risorsa o a un pool di risorse. |
SemaphoreAcl |
Fornisce un metodo di estensione specifico di Windows per la creazione di oggetti Semaphore con sicurezza basata sull'elenco di controllo di accesso (ACL). |
SemaphoreFullException |
Eccezione che viene generata quando il metodo Release viene chiamato su un semaforo il cui conteggio ha già raggiunto il massimo. |
SemaphoreSlim |
Rappresenta un'alternativa semplificata a Semaphore che limita il numero di thread che possono accedere simultaneamente a una risorsa o a un pool di risorse. |
SynchronizationContext |
Fornisce la funzionalità di base per propagare un contesto di sincronizzazione in vari modelli di sincronizzazione. |
SynchronizationLockException |
Eccezione generata quando un metodo richiede che il chiamante sia il proprietario del blocco su un Monitor specifico, e tale metodo viene richiamato da un chiamante che non è proprietario del blocco. |
Thread |
Crea e controlla un thread, ne imposta le priorità e ne ottiene lo stato. |
ThreadAbortException |
Eccezione generata quando viene eseguita una chiamata al metodo Abort(Object). La classe non può essere ereditata. |
ThreadExceptionEventArgs |
Fornisce dati per l'evento ThreadException. |
ThreadingAclExtensions |
Offre metodi di estensione specifici di Windows per la gestione dei descrittori di sicurezza dell'elenco di controllo di accesso (ACL) per EventWaitHandle, Mutex e Semaphore. |
ThreadInterruptedException |
Eccezione generata quando un Thread viene interrotto mentre si trova nello stato di attesa. |
ThreadLocal<T> |
Consente l'archiviazione dei dati nella memoria locale dei thread. |
ThreadPool |
Fornisce un pool di thread che può essere usato per eseguire attività, inviare elementi di lavoro, elaborare operazioni di I/O asincrone, attendere per conto di altri thread ed elaborare timer. |
ThreadPoolBoundHandle |
Rappresenta un handle di I/O associato al pool di thread di sistema che consente ai componenti di basso livello di ricevere le notifiche per le operazioni di I/O asincrone. |
ThreadStartException |
Eccezione generata quando si verifica un errore in un thread gestito dopo l'avvio del thread del sistema operativo sottostante, ma prima che il thread sia pronto per l'esecuzione di codice utente. |
ThreadStateException |
Eccezione generata quando un Thread si trova in un ThreadState non valido per la chiamata al metodo. |
Timeout |
Contiene costanti che specificano intervalli di timeout infiniti. La classe non può essere ereditata. |
Timer |
Fornisce un meccanismo per eseguire un metodo su un thread del pool di thread a intervalli specificati. La classe non può essere ereditata. |
Volatile |
Contiene metodi per l'esecuzione di operazioni relative alla memoria volatile. |
WaitHandle |
Incapsula oggetti specifici del sistema operativo che attendono l'accesso esclusivo alle risorse condivise. |
WaitHandleCannotBeOpenedException |
Eccezione generata quando viene effettuato un tentativo di aprire un mutex di sistema, un semaforo o un handle di attesa evento inesistente. |
WaitHandleExtensions |
Fornisce metodi pratici per usare un handle sicuro per un handle di attesa. |
Struct
AsyncFlowControl |
Fornisce la funzionalità per ripristinare la migrazione, o flusso, del contesto di esecuzione fra thread. |
AsyncLocalValueChangedArgs<T> |
Classe che fornisce le informazioni di modifica dei dati alle istanze di AsyncLocal<T> registrate per le notifiche di modifica. |
CancellationToken |
Propaga la notifica di richiesta di annullamento delle operazioni. |
CancellationTokenRegistration |
Rappresenta un delegato di callback registrato con CancellationToken. |
Lock.Scope |
Rappresenta un Lock oggetto che potrebbe essere stato immesso. |
LockCookie |
Definisce il blocco che implementa la semantica writer singolo/visualizzatori multipli. Si tratta di un tipo di valore. |
NativeOverlapped |
Fornisce un layout esplicito visibile dal codice non gestito e che avrà lo stesso layout della struttura Win32 OVERLAPPED con campi riservati aggiuntivi alla fine. |
SpinLock |
Fornisce una primitiva di blocco a esclusione reciproca in cui un thread che tenta di acquisire il blocco rimane in attesa in un ciclo eseguendo controlli ripetuti finché il blocco non diventa disponibile. |
SpinWait |
Fornisce il supporto per l'attesa basata su rotazione. |
Interfacce
IThreadPoolWorkItem |
Rappresenta un elemento di lavoro che può essere eseguito da ThreadPool. |
ITimer |
Rappresenta un timer che può avere la scadenza e il periodo di modifica. |
Enumerazioni
ApartmentState |
Specifica lo stato dell'apartment di un Thread. |
EventResetMode |
Indica se EventWaitHandle verrà reimpostato automaticamente o manualmente dopo la ricezione di un segnale. |
LazyThreadSafetyMode |
Specifica il modo in cui un'istanza di Lazy<T> sincronizza l'accesso tra più thread. |
LockRecursionPolicy |
Specifica se lo stesso thread può accedere a un blocco più volte. |
ThreadPriority |
Consente di specificare la priorità di pianificazione di un Thread. |
ThreadState |
Vengono specificati gli stati di esecuzione di un Thread. |
Delegati
ContextCallback |
Rappresenta un metodo da chiamare all'interno di un nuovo contesto. |
IOCompletionCallback |
Consente di ricevere il codice di errore, il numero di byte e il tipo di valore sovrapposto quando viene completata un'operazione di I/O nel pool di thread. |
ParameterizedThreadStart |
Rappresenta il metodo eseguito in un oggetto Thread. |
SendOrPostCallback |
Rappresenta un metodo da chiamare quando un messaggio deve essere inviato a un contesto di sincronizzazione. |
ThreadExceptionEventHandler |
Rappresenta il metodo che gestirà l'evento ThreadException di un oggetto Application. |
ThreadStart |
Rappresenta il metodo eseguito in un oggetto Thread. |
TimerCallback |
Rappresenta il metodo che gestisce le chiamate da un Timer. |
WaitCallback |
Rappresenta un metodo di callback che deve essere eseguito da un thread del pool di thread. |
WaitOrTimerCallback |
Rappresenta un metodo da chiamare quando WaitHandle riceve un segnale o esegue il timeout. |