Operazioni multithread con form e controlli
Aggiornamento: novembre 2007
Il multithread, oltre a rappresentare la soluzione ottimale per l'esecuzione di routine e metodi di classe, può essere impiegato anche con form e controlli. In questo caso, tenere presente quanto segue:
Quando possibile, eseguire i metodi di un controllo solo sul thread con cui è stato creato. Per chiamare un metodo di un controllo da un altro thread, è necessario utilizzare il metodo Invoke.
Non utilizzare l'istruzione SyncLock per bloccare i thread che manipolano controlli o form. Dato che i metodi dei controlli e dei form a volte richiamano una routine di chiamata, si corre il rischio di creare inavvertitamente un deadlock, in cui due thread attendono che l'altro elimini il blocco, determinando così il blocco completo dell'applicazione.
Vedere anche
Concetti
Parametri e valori restituiti per routine multithreading