Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.05.06;
Скачать: CL | DM;

Вниз

потоки   Найти похожие ветки 

 
Сергей М. ©   (2006-12-11 08:47) [40]


> В деструкторе класса (не при финализации длл)


Если не при финализации этот деструктор вызывается, то когда ?


 
Mixal__   (2006-12-11 09:15) [41]

При финализации длл этот деструктор выполняется... но почему код неработоспособен??


 
Сергей М. ©   (2006-12-11 09:36) [42]

Ничего не понимаю ...

Сначала ты говоришь, что


> В деструкторе класса (не при финализации длл)


А теперь


> При финализации длл этот деструктор выполняется


Вражескую разведку что ли запутываешь ?)


> почему код неработоспособен?


Потому что при финализации dll ты никогда не дождешься сигнала завершения потока, созданного в контексте этой dll.
Следы ведут к блокировке PEB, выполняемой системой всякий раз при загрузке/выгрузке модуля.


 
Mixal__   (2006-12-11 10:44) [43]

Что подразумевалось под финализацией длл?
Я не в курсе как работает программа, подключающая длл. Деструктор вызывается когда пользователь закрывает программу.
Эксперимент показал, что WaitForSingleObject не вернуло WAIT_TIMEOUT...


 
Сергей М. ©   (2006-12-11 10:53) [44]


> Что подразумевалось под финализацией длл?


Код в составе образа dll, вызываемый системой при выгрузке этой dll из АП процесса ее использующего.
Конкретно - вызов функции DllEntryPoint() с параметром PROCESS_DETACH.


> При инициализации dll создаётся поток

Соответственно контрвопрос - что здесь подразумевалось под инициализацией ?


> Деструктор вызывается когда пользователь закрывает программу


Что, сам по себе что ли вызывается ?
Т.е. ты сам не понимаешь, где в твоем коде происходит вызов этого деструктора ?


 
Сергей М. ©   (2006-12-11 10:55) [45]


> Эксперимент показал, что WaitForSingleObject не вернуло
> WAIT_TIMEOUT


Значит эта Wait-функция была вызвана заведомо не при финализации, а раньше.



Страницы: 1 2 вся ветка

Текущий архив: 2007.05.06;
Скачать: CL | DM;

Наверх




Память: 0.54 MB
Время: 0.013 c
15-1176045410
ppcumax
2007-04-08 19:16
2007.05.06
Как завершить процесс?


2-1176815726
ppcumax
2007-04-17 17:15
2007.05.06
Как удалить первую строку из Memo?


1-1173691841
greg123
2007-03-12 12:30
2007.05.06
Как определить какие формы приложения открыты


2-1176526329
T.V
2007-04-14 08:52
2007.05.06
Время "жизни" параметров командной строки


1-1173694564
mavrtuva
2007-03-12 13:16
2007.05.06
Quantum Grid