Вверх ↑
Ответов: 9906
Рейтинг: 351
#1: 2017-05-15 16:16:37 ЛС | профиль | цитата
Netspirit писал(а):
Но мы обсуждаем глобальный паттерн использования параллельных потоков

Вообще-то, Вы подняли вопрос о некорректности работы CloseCom
Это совершенно справедливо, и это надо исправлять.

Далее, начался разговор из серии "хочу убить самого себя" (которому в обед сто лет будет) с переходом на "глобальные паттерны".
Так вот, если они действительно глобальные (т.е., не накладывающие ограничений на окружение), то другого выхода, как "таймерная развязка", или DeferredEvent -- пока не придумано.
Мне даже думается, что попытки изобретательства на эту тему - мало перспективны

--- Добавлено в 2017-05-15 16:30:14

Netspirit писал(а):
А без WaitFor уничтожение объекта приведёт к падению потока

Я бы сказал по другому...
С уничтожением объекта можно справиться, если сделать для потоков AutoFree=True.
Но у нас еще есть и CloseHandle(hFile) - который тоже не хотелось бы исполнять ДО завершения их обоих

--- Добавлено в 2017-05-15 16:34:24

Хотя с другой стороны - это фактически гарантированно, если приоритет потока выше основного...
Сразу же после SetEvent(EvRdStop) поток thrd должен быть убит нафиг и без остатка.
Вроде как.
карма: 9

0
Редактировалось 3 раз(а), последний 2017-05-15 18:22:23