Вывод результата из потока, созданного в длл, на форму
Доброго времени суток. Возникла такая проблема: в длл-ке создается поток, идет расчет, и в итоге результат надо вывести результат расчета на форму. Пытался сделать с помощью ивента, но в потоке ивент класса не виден и не вызывается. В какую сторону копать?
написано, что создавать потоки в DLL-ках - признак говнокода. Грамотное решение, скорее всего, состоит в вызове функции расчета, которая находится в DLL, внутри созданного в основной сборке объекта BackgroundWorker и обработке события Complete соответствующего объекта.
Читать MSDN. Там английским по белому
З.Ы. backgroundworker, по-моему, вещь очень глючная, да и не обеспечивает нормальный функционал(по крайней мере когда я последний раз его видел). Thread-гораздо более удобная вещь(ну это уже так, в сторону от темы)
Я не утверждаю, что нужно пользоваться только BackgroundWorker (хотя, вообще говоря, он является штатным решением для выполнения фоновых задач, как у вас), речь идет о том, что _создание_ потока - не сам поток, а его создание - необходимо выносить из библиотеки.
это где в MSDN такие умные вещи пишут? там есть что-то кроме справок по функциям и краткого обзора чего-нибудь?
Есть. Я ж ссылку привел выше. Называется "Best Practices for Creating DLLs".
Спасибо за помощь)