Articles of backgroundworker

Eccezioni non gestite in BackgroundWorker

Ho una piccola applicazione WinForms che utilizza un object BackgroundWorker per eseguire un’operazione di lunga durata. L’operazione in background genera eccezioni occasionali, in genere quando qualcuno ha un file aperto che viene ricreato. Indipendentemente dal fatto che il codice venga eseguito dall’IDE o non da .NET, viene visualizzata una finestra di errore che informa l’utente […]

Come “uccidere” lo sfondo lavoratore completamente?

Sto scrivendo un’applicazione per Windows che esegue ripetutamente una sequenza di azioni IO digitali. Questa sequenza di azioni inizia quando l’utente fa clic su un pulsante “START”, ed è fatto da un lavoratore in background in backgroundWorker1_DoWork (). Tuttavia, ci sono occasioni in cui ottengo il messaggio di errore “Questo backgroundworker è attualmente occupato …….”. […]

Sostituzione della libreria parallela dell’attività per BackgroundWorker?

La libreria parallela delle attività ha qualcosa che potrebbe essere considerato una sostituzione o un miglioramento rispetto alla class BackgroundWorker? Ho un’applicazione WinForms con un’interfaccia utente in stile wizard e svolge alcune attività di lunga durata. Voglio essere in grado di avere un’interfaccia utente retriggers con la barra di avanzamento standard e la possibilità di […]

Come fermare correttamente BackgroundWorker

Ho un modulo con 2 caselle combinate su di esso. E voglio riempire combobox2.DataSource base a combobox1.Text e combobox2.Text (presumo che l’utente abbia completato l’input in combobox1 e si trovi nel mezzo dell’input in combobox2 ). Quindi ho un gestore di eventi per combobox2 questo modo: private void combobox2_TextChanged(object sender, EventArgs e) { if (cmbDataSourceExtractor.IsBusy) […]

Invio di argomenti al lavoratore in background?

Diciamo che voglio inviare un parametro int a un lavoratore in background, come può essere realizzato? private void worker_DoWork(object sender, DoWorkEventArgs e) { } So quando questo è worker.RunWorkerAsync () ;, Non capisco come definire in worker_DoWork che dovrebbe avere un parametro int.

Async / await vs BackgroundWorker

Nei giorni scorsi ho testato le nuove funzionalità di .net 4.5 e c # 5. Mi piacciono le sue nuove funzionalità asincrone / attese. In precedenza avevo usato BackgroundWorker per gestire processi più lunghi in background con l’interfaccia utente retriggers. La mia domanda è: dopo avere queste nuove funzionalità, quando dovrei usare async / await […]

Come attendere la cancellazione di un BackgroundWorker?

Considera un metodo ipotetico di un object che fa cose per te: public class DoesStuff { BackgroundWorker _worker = new BackgroundWorker(); … public void CancelDoingStuff() { _worker.CancelAsync(); //todo: Figure out a way to wait for BackgroundWorker to be cancelled. } } Come si può aspettare che un BackgroundWorker sia fatto? In passato le persone hanno […]

BackgroundWorker RunWorkerCompleted Event

L’applicazione My C # ha diversi operatori in background. A volte un lavoratore in background ne licenzierà un altro. Quando viene completato il primo background worker e viene RunWorkerCompleted evento RunWorkerCompleted , su quale thread verrà RunWorkerCompleted quell’evento, l’interfaccia utente o il primo worker in background da cui RunWorkerAsync stato chiamato RunWorkerAsync ? Sto usando […]

Come aggiornare la GUI con backgroundworker?

Ho passato l’intera giornata a cercare di far usare la mia applicazione ai thread ma senza fortuna. Ho letto molta documentazione e ho ancora molti errori, quindi spero che tu mi possa aiutare. Ho un grande metodo che richiede tempo che chiama il database e aggiorna la GUI. Questo deve accadere tutto il tempo (o […]

Come implementare correttamente un BackgroundWorker con gli aggiornamenti di ProgressBar?

-Aggiornato – 14/10 ha anche posto questa domanda Per dare un’idea chiara di cosa sta succedendo e tenendo conto dei commenti e di questo articolo qui Quello che voglio veramente fare ora è invocare un nuovo modulo con una barra di avanzamento su di esso e farlo girare e animare mentre il mio thread back […]