devo eseguire una query molto pesante attraverso un command che restituisce un datareader
quando viene invocato il metodo ".ExecuteReader" l'applicazione chiaramente rimane bloccata in attesa di restituire i dati
ho provato a mettere Application.DoEvents() per cercare di ottenere il controllo sull'applicazione metre esegue l'operazione in corso ma rimane tutto bloccato
ho provato anche a mettere il codice in una funzione che poi ho chiamato tramite un delegate ma l'effetto è lo stesso(applicazione bloccata fino al termine del operazione di lettura)
devo l'anciare il codice in un'altro tread?? come faccio poi a sapere quando l'operazione è terminata? mi viene notificato un evento? posso poi interrompere l'operazione quando è ancora in corso?
codice:Dim dr As OleDbDataReader Dim comm As New OleDbCommand comm.Connection = connessione comm.CommandText = sql Application.DoEvents() dr = comm.ExecuteReader