');

C# Languagethreading

Osservazioni

Un thread è una parte di un programma che può essere eseguito indipendentemente dalle altre parti. Può eseguire attività contemporaneamente con altri thread. Il multithreading è una funzionalità che consente ai programmi di eseguire l'elaborazione simultanea in modo che sia possibile eseguire più di una operazione alla volta.

Ad esempio, è possibile utilizzare il threading per aggiornare un timer o un contatore in background mentre si eseguono contemporaneamente altre attività in primo piano.

Le applicazioni multithread sono più reattive all'input dell'utente e sono anche facilmente scalabili, poiché lo sviluppatore può aggiungere thread come e quando il carico di lavoro aumenta.

Per impostazione predefinita, un programma C # ha un thread, il thread del programma principale. Tuttavia, i thread secondari possono essere creati e utilizzati per eseguire codice in parallelo con il thread principale. Tali thread sono chiamati thread di lavoro.

Per controllare l'operazione di un thread, CLR delega una funzione al sistema operativo noto come Thread Scheduler. Uno scheduler di thread assicura che tutti i thread siano assegnati al tempo di esecuzione corretto. Controlla inoltre che i thread bloccati o bloccati non consumino gran parte del tempo di CPU.

.NET Framework System.Threading namespace semplifica l'utilizzo dei thread. System.Threading consente il multithreading fornendo un numero di classi e interfacce. Oltre a fornire tipi e classi per un particolare thread, definisce anche i tipi per contenere una collezione di thread, una classe timer e così via. Fornisce inoltre il suo supporto consentendo l'accesso sincronizzato ai dati condivisi.

Thread è la classe principale nello spazio dei nomi System.Threading . Altre classi includono AutoResetEvent , Interlocked , Monitor , Mutex e ThreadPool .

Alcuni dei delegati presenti nello spazio dei nomi System.Threading includono ThreadStart , TimerCallback e WaitCallback .

Le enumerazioni nello spazio dei nomi System.Threading includono ThreadPriority , ThreadState e EventResetMode .

In .NET Framework 4 e versioni successive, la programmazione multithreading è resa più semplice e più semplice attraverso le classi System.Threading.Tasks.Parallel e System.Threading.Tasks.Task , Parallel LINQ (PLINQ), nuove classi di raccolta simultanee in System.Collections.Concurrent nomi System.Collections.Concurrent e un nuovo modello di programmazione basato sulle attività.

threading Esempi correlati