![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Длительный поток в dll и явная закгурзка.выгрузка dll [Win2k, WinXP]
KSergey © (2005-07-06 09:05:00)Сценарий:
Есть некий процесс. Грузится dll (LoadLibrary...)
Из dll вызывается некая ф-ция
Эта ф-ция (в dll) порождает поток (который djdct не завершается, например, или работает довольно долго)
Поcле на поток забиваем и возвращаемся из dll-функции
Вызвавший процесс тут же делает FreeLibrary
Вопрос: что будет с потоком? Он так и будет спокойно работать, пока не завершится, или он будет прибит системой?
KSergey (2005-07-06 09:28:00) [1]> Digitman © (06.07.05 09:21) [2]
Значить все-таки вот так....
Понял, огромное спасиба!
Digitman (2005-07-06 09:21:00) [2]
> Вызвавший процесс тут же делает FreeLibrary
.. и тут же рискует схлопотать AV, потому что код поточной ф-ции находился в диапазоне адресов, распределенных в АП процесса при загрузке библ-ки ... после выгрузки библиотеке кода поточной ф-ции в АП тек.процесса попросту более не существует
alpet (2005-07-06 09:17:00) [3]Проверь, по идее вылет должен быть у потока, и возможно у процесса тоже.