| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Выполнение потоком другой задачи |
| Автор: MaxWave 8.1.2009, 01:04 | ||||
| Всем здрасти!!! Вообщем имеется второй фоновый поток, который делает что то типа того
Так же в этом потоке создается много объектов (не контролы и не WinForms), которые естествеено, можно использовать только из этого потока. Как вызвать функцию из этого потока главным потоком? Пытался делать так:
, но не вызывается, т.к. цикл забрал весь поток. Как ему сказать, что бы он переключился и выполнил функцию, а потом опять начал работать цикл. Пробовал создавать делегаты в этом потоке а потом вызывать из главного, но почему то вызываются в контексте главного потока (делал примерно как http://forum.vingrad.ru/topic-193943.html#st_0_view_0 ) Собственн наверно вопрос в том, как сделать так, то бы поток прекратил цикл, обработал вызов функции, а потом продолжил цикл. |
| Автор: MaxWave 8.1.2009, 19:08 | ||||
кароче решил траблу с помощью очереди анонимных делегатов. Жесть.
По наступлении события делаем типа так InvokeManager.AddDelegate(delegate {mogreWin.app.Keyboard_Handler( e,true);}); В другом потоке:
И будет вам счастье. |