Вниз
Скачать: CL | DM;

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

 
Sirakuz ©   (2004-06-07 17:44) [0]

У меня 1 процесс в нём несколько потоков, все потоки используют одну библиотеку. Потоки загружают/получают ссылку на библиотеку при помощи LoadLibrary(по идее они(ссылки)у всех потоков одинаковые). Если один из потоков вызовет FreeLibrary, потеряют ли смысл ссылки на библиотеки используемые другими потоками, т.е. выгрузится ли библиотека из памяти?


 
Mim1 ©   (2004-06-07 19:08) [1]

да


 
Sergey Masloff   (2004-06-08 00:12) [2]

Если каждый поток сделал LoadLibrary то каждый и делает ей Free. На другие потоки это не повлияет. Более того, делая FreeLibrary ты говоришь системе что эта библиотека ТЕБК больше не нужна. Выгружать ее или нет решает система и когда она там ее выгрузит - дело не твое.


 
Игорь Шевченко ©   (2004-06-08 01:01) [3]


> Выгружать ее или нет решает система и когда она там ее выгрузит
> - дело не твое


Решает, как раз приложение, DLL выгрузится, когда будет выполнена последняя функция FreeLibrary, уменьшившая счетчик  использования данной библиотеки. В NT-системах этот счетчик можно даже посмотреть вызовом функции RtlQueryProcessDebugInformation или использованием Toolhelp-фукнций.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.038 c
14-1088657607
Vlad Oshin
2004-07-01 08:53
2004.07.18
длинные повторяющиеся сигналы в Award Biose v6?


14-1088405639
PVOzerski
2004-06-28 10:53
2004.07.18
Кто-нибудь от "Лесной" до "Мужества" на метро уже прокатился?


1-1088691685
r0bert
2004-07-01 18:21
2004.07.18
как мне сваратить это с картинкой


3-1088182867
zokzok
2004-06-25 21:01
2004.07.18
ttable vs tquery


1-1088842326
clampo
2004-07-03 12:12
2004.07.18
самонахождение файлов *.bmp




   Наверх