Condividi tramite


Operazioni asincrone (ADO.NET)

Il completamento di alcune operazioni di database, ad esempio l'esecuzione di comandi, può richiedere parecchio tempo. In questi casi, le applicazioni a thread singolo devono bloccare altre operazioni e attendere il comando per il completamento prima di continuare le rispettive operazioni. Al contrario, la possibilità di assegnare l'operazione a esecuzione prolungata a un thread in background consente al thread in primo piano di restare attivo per l'intera durata dell'operazione. In un'applicazione Windows, ad esempio, la delega dell'operazione a esecuzione prolungata a un thread in background consente al thread dell'interfaccia utente di rimanere attivo mentre l'operazione è in esecuzione.

.NET Framework fornisce diversi modelli di progettazione asincroni standard che gli sviluppatori possono utilizzare per sfruttare i thread in background e liberare i thread dell'interfaccia utente o i thread ad alta priorità e utilizzarli per completare altre operazioni. ADO.NET supporta questi modelli di progettazione nella propria classe SqlCommand. In particolare, i metodi BeginExecuteNonQuery, BeginExecuteReader e BeginExecuteXmlReader, abbinati ai metodi EndExecuteNonQuery, EndExecuteReader e EndExecuteXmlReader, forniscono il supporto asincrono.

Questi metodi sono supportati soltanto in Microsoft Windows XP e Windows 2000, non sono supportati in Windows 98 o Windows ME.

NotaNota

La programmazione asincrona è una funzionalità centrale di .NET Framework e ADO.NET sfrutta pienamente i modelli di progettazione standard.Per ulteriori informazioni sulle diverse tecniche asincrone disponibili per gli sviluppatori, vedere Chiamata asincrona dei metodi sincroni.

Benché l'utilizzo di tecniche asincrone con le funzionalità ADO.NET non comporti ulteriori considerazioni, è probabile che gli sviluppatori utilizzeranno le funzionalità asincrone più in ADO.NET che in altre aree di .NET Framework. Quando si creano applicazioni multithreading è importante essere a conoscenza sia dei vantaggi che dei potenziali problemi. Negli esempi seguenti vengono illustrate diverse problematiche importanti di cui gli sviluppatori dovranno tenere conto quando compilano applicazioni che incorporano funzionalità multithreading.

In questa sezione

Vedere anche

Concetti

Chiamata asincrona dei metodi sincroni

Altre risorse

SQL Server e ADO.NET