Threading gestito

Generalmente l'obiettivo del programmatore è di sviluppare applicazioni in grado di garantire tempi di risposta veloci anche se sono in esecuzione altre attività, in computer con uno o più processori. L'utilizzo di più thread di esecuzione è uno dei metodi più efficaci per raggiungere questo risultato e per fare uso al tempo stesso del processore tra un evento e l'altro o persino durante gli eventi. Introducendo i concetti di base del threading, in questa sezione verrà trattato in particolar modo il threading gestito e ne verrà descritto l'utilizzo.

NotaNota

A partire da .NET Framework versione 4, la programmazione multithreading viene semplificata notevolmente con le classi System.Threading.Tasks.Parallel e System.Threading.Tasks.Task, Parallel LINQ (PLINQ), le nuove classi Collection simultanee nello spazio dei nomi System.Collections.Concurrent e un nuovo modello di programmazione basato sul concetto di attività anziché di thread.Per ulteriori informazioni, vedere Programmazione parallela in .NET Framework.

In questa sezione

  • Nozioni di base sul threading gestito
    Vengono forniti i cenni preliminari sul threading gestito e le indicazioni per stabilire quando utilizzare più thread.

  • Utilizzo di thread e threading
    Vengono illustrati la creazione, l'avvio, la sospensione, la ripresa e l'interruzione dei thread.

  • Suggerimenti per l'utilizzo del threading gestito
    Vengono illustrati i livelli di sincronizzazione, come evitare deadlock e race condition, i computer a processore unico e a più processori e altri problemi relativi al threading.

  • Oggetti e funzionalità del threading
    Vengono descritte le classi gestite che è possibile utilizzare per sincronizzare le attività dei thread e i dati degli oggetti a cui si accede in thread diversi e viene fornita una panoramica sui thread dei pool di thread.

Riferimenti

Sezioni correlate