Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Вывод результата из потока, созданного в длл, на форму

5.1K
04 августа 2011 года
Karrde
88 / / 15.10.2007
Доброго времени суток. Возникла такая проблема: в длл-ке создается поток, идет расчет, и в итоге результат надо вывести результат расчета на форму. Пытался сделать с помощью ивента, но в потоке ивент класса не виден и не вызывается. В какую сторону копать?
278
04 августа 2011 года
Alexander92
1.1K / / 04.08.2008
Читать MSDN. Там английским по белому написано, что создавать потоки в DLL-ках - признак говнокода. Грамотное решение, скорее всего, состоит в вызове функции расчета, которая находится в DLL, внутри созданного в основной сборке объекта BackgroundWorker и обработке события Complete соответствующего объекта.
5.1K
04 августа 2011 года
Karrde
88 / / 15.10.2007
Ну не знаю. я думал ввести поток внутрь длл, чтобы потом абстрагироваться и не париться по поводу потоков в основном проекте. Сделал запрос в длл на расчет, запрос добавился в пул, выполнился, и ивентом в основной проект выдал результат.
З.Ы. backgroundworker, по-моему, вещь очень глючная, да и не обеспечивает нормальный функционал(по крайней мере когда я последний раз его видел). Thread-гораздо более удобная вещь(ну это уже так, в сторону от темы)
278
04 августа 2011 года
Alexander92
1.1K / / 04.08.2008
Я не утверждаю, что нужно пользоваться только BackgroundWorker (хотя, вообще говоря, он является штатным решением для выполнения фоновых задач, как у вас), речь идет о том, что _создание_ потока - не сам поток, а его создание - необходимо выносить из библиотеки.
316
04 августа 2011 года
Alm3n
889 / / 29.05.2009
это где в MSDN такие умные вещи пишут? там есть что-то кроме справок по функциям и краткого обзора чего-нибудь?
278
04 августа 2011 года
Alexander92
1.1K / / 04.08.2008
Есть. Я ж ссылку привел выше. Называется "Best Practices for Creating DLLs".
5.1K
05 августа 2011 года
Karrde
88 / / 15.10.2007
Спасибо за помощь)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог