Есть ли способ получить уведомление о том, что поток не работает (вернулся) в вашем приложении?
Я знаю, что это возможно в режиме ядра (используя PsSetCreateThreadNotifyRoutine), но есть ли способ узнать это из пользовательского режима, используя только Win32 API?Уведомление о том, что поток уничтожен
Проблема в том, что я не могу управлять кодом в потоке, потому что мой модуль является частью библиотеки. Создание драйвера для мониторинга системы не будет слишком сложным, но пользователям очень сложно устанавливать драйвер даже для базового приложения, которое использует мою библиотеку.
В моем коде используется хранилище TLS, а под Linux/Unix pthread_key_create может быть указатель на функцию, вызываемую при уничтожении потока. Но TlsAlloc (Windows) не имеет ничего подобного ...
Заранее спасибо!
см. Http://stackoverflow.com/questions/301054/how-can-i-determine-if-a-win32-thread-has-terminated –