Compartilhar via


Multithreading com Formulários e Controles

Enquanto multithreading se adequa melhor a executar procedimentos e métodos de classe, você também pode usá-lo com formulários e controles.Se você fizer isso, estaja ciente dos seguintes pontos:

  • Sempre que possível, execute métodos de um controle apenas no fio no qual ele foi criado.Se você precisa chamar um método de um controle de outro fio, você precisa usar o Invoke para chamar o método.

  • Não use a declaração SyncLock para travar fios que manipulam controles ou formulários.Devido ao fato de que os métodos de controles e formulários às vezes chamam de volta um procedimento de chamada, você pode acabar inadvertidamente num impasse—uma situação na qual dois fios aguardam um ao outro para liberar a fechadura, fazendo com que o aplicativo seja interrompido.

Consulte também

Conceitos

Estados da thread

Parâmetros e Valores de Retorno para os Procedimentos Multi-threaded

Aplicativos Multithreaded

Referência

Invoke

InvokeRequired

Outros recursos

Multithreading in Components