Aggiornamento della UI da un thread secondario

giovedì 17 agosto 2006 - 12.50

paolopat Profilo | Junior Member

Ciao a tutti.....volevo porre il seguente problema :

ho un'applicazione windows form che quando viene avviata prevede ovviamente un unico thread. Mediante l'utilizzo dei delagate eseguo una chiamata asincrona di un metodo (utilizzo BeginInvoke) e questo fa si che tale metodo venga eseguito in un altro thread. Ho letto su numerosi articoli e testi che non bisognerebbe mai modificare la UI (ad esempio cambiare il testo di una label) dal thread secondario, in quanto un'operazione di questo tipo va eseguita sempre nel thread primario "padrone" della UI. Ho letto che bisogna switchare da un thread all'altro (utilizzando il marshalling) ... ma mi chiedevo ... è un modello di programmazione oppure è una possibile soluzione ? Ho provato a modificare una label del form dal thread secondario e nè al momento della compilazione, nè al runtime mi viene segnalato un errore....

totti240282 Profilo | Guru

io per fare ciò uso i delegate.
C'è solo un capitano !!!!!!

paolopat Profilo | Junior Member

anche io uso i delegate...ma la mia domanda è, perchè la UI deve essere aggiornata esclusivamente dal thread primario e non da quello secondario ? Facendolo con quest'ultimo non si presenta nessun errore e tutto funziona lo stesso.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5