Threading
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. Per approfondire ulteriormente l'argomento del threading in generale e dei sistemi operativi Windows, consultare Microsoft Platform SDK e gli articoli contenuti nel programma per sviluppatori Microsoft® MSDN® all'indirizzo www.microsoft.com/italy/msdn/
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 blocchi critici e condizioni di competizione, 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.
Sezioni correlate
- Domini applicazione
Viene fornita una descrizione dei domini dell'applicazione e dell'uso da parte di Common Language Infrastructure. - Inclusione di chiamate asincrone
Viene fornita una descrizione generale della programmazione asincrona. - Accesso a oggetti in altri domini applicazione mediante .NET Remoting
Viene fornita una descrizione generale e una serie di esempi di generazione di applicazioni distribuite che comunicano con domini applicazione diversi.