Re: идеология использования Коллбака: Callback's
От: Кодт Россия  
Дата: 25.02.15 16:27
Оценка:
Здравствуйте, emergen, Вы писали:

E>Добрый день, использую коллбак некого объекта MyLongCompute, т.е.

E>есть у меня форма MyForm в котором по умолчанию запускается главный поток... по нажатию кнопки, передаются параметры для обработки в долгий процесс стороннего объекта MyLongCompute, по завершению долгой обработки есть возможность получить коллбак с уведомлением завершения процесса расчета и параметры для вывода. Вывод информации на форму занимается главный поток объекта MyForm. Как сделать так, чтобы полученные параметры от КаллБэка были доступны главному потоку и главный поток мог отобразить их значения на форме?

Сильно зависит от ОС и оконного фреймворка.

Можно тупо писать в рабочем потоке данные в глобальную переменную и затем отправлять оконному потоку сообщение "посмотри, когда сможешь". Или упаковывать данные в структуру на куче или в строку, и отправлять сообщение с прицепленными данными.
Можно отправлять оконному потоку синхронное сообщение с данными "посмотри немедленно, как сможешь, а я подожду".
Можно в рабочем потоке писать данные в глобальную переменную, а оконный поток пусть сам с нужной ему периодичностью проверяет, есть ли там что-то интересное.
Ну и т.д.
Перекуём баги на фичи!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.