Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
Управлять точкой, где остановится поток, при останове потока в винде средствами приостанова (а это SuspendThread и ResumeThread) сам останавливаемый поток не может управлять местом, где он будет остановлен. Он просто будет остановлен где попало. То есть средства в WINAPI управления точкой останова треда при приостанове НЕТ.
Можно сделать приостанов потока средствами синхронизации - через семафоры, евенты, мутексы, но это уже собственная реализация этого алгоритма с использованием других функций WINAPI. То есть Вым это надо делать самостоятельно через жопу, используя средства межпроцессного обмена и синхронизации.
Однако теперь самое главное. Если кто-то снаружи (не Ваша программа) один черт сделает SuspendThread Вашему треду, то весь этот Ваш состроенный механизм нихрена не сработает, и тред будет остановлен в произвольном месте. Потому что НЕТ В ВИНДЕ средств защиты от этого.
Составить ответ | Вернуться на конференцию
Ответы