Condividi tramite


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

Stati di thread

Parametri e valori restituiti per routine multithreading

Applicazioni multithread

Riferimenti

Invoke

InvokeRequired

Altre risorse

Multithreading nei componenti