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

Глобальные переменные в DLL   Найти похожие ветки 

 
s00r   (2007-12-09 09:52) [0]

Если две программы используют одну и ту же DLL, и в DLL есть глобальные переменные. То для двух копий DLL переменные будут общие? Или эти две копии будут работать независимо друг от друга?


 
Leonid Troyanovsky ©   (2007-12-09 10:19) [1]


> s00r   (09.12.07 09:52)  

> Или эти две копии будут работать независимо друг от друга?

Да, независимо.

--
Regards, LVT.


 
Nucer   (2007-12-09 11:03) [2]

Вот тут читаю:

> Операторная часть  библиотеки  состоит из кода инициализации
>         библиотеки. Код  инициализации  выполняется  только
>  один раз при
>         первоначальной загрузке библиотеки. Когда другие
> прикладные прог-
>         раммы будут использовать уже загруженную библиотеку,
>   код инициа-
>         лизации повторно не выполняется, но увеличивается
> счетчик исполь-
>         зования DLL.
>
>              DLL хранится в памяти,  пока ее счетчик использования
> больше
>         нуля. Когда  счетчик использования становится нулевым,
>   указывая,
>         что все использующие DLL прикладные программы  завершили
>  работу,
>         она удаляется из памяти. При этом выполняется код
> процедуры выхо-
>         да. Процедуры  выхода   регистрируются   с   помощью
>   переменной
>         ExitProc, которая описывается в Главе 22 "Вопросы
> управления".

Проверяю, я код инициализации выполняется каждый раз даже если уже запущено приложение с той же библиотекой. Я не правильно понял или в статье ошибка?

http://www.lib.profi.net.ua/doc/prog/tp7/lr11.shtml.htm


 
Leonid Troyanovsky ©   (2007-12-09 12:22) [3]


> Nucer   (09.12.07 11:03) [2]

> Проверяю, я код инициализации выполняется каждый раз даже
> если уже запущено приложение с той же библиотекой. Я не
> правильно понял или в статье ошибка?

Ошибка, конечно.
Каждый процесс выполняет DLL_PROCESS_ATTACH,
поток - DLL_THREAD_ATTACH.

Но, с локальностью глобальных переменных это, IMHO, не связано.

--
Regards, LVT.


 
MetalFan ©   (2007-12-09 12:42) [4]


>
> http://www.lib.profi.net.ua/doc/prog/tp7/lr11.shtml.htm

ну вот, еще и BP вспомнили


 
DrPass ©   (2007-12-09 13:17) [5]


> Проверяю, я код инициализации выполняется каждый раз даже
> если уже запущено приложение с той же библиотекой. Я не
> правильно понял или в статье ошибка?

Никакой ошибки. Просто ты читаешь статью про совершенно другую операционную систему, и другой язык программирования



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

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



Память: 0.46 MB
Время: 0.008 c
2-1197098943
kuvalda
2007-12-08 10:29
2008.01.06
TTabbedNotebook и TWebBrowser


6-1177413145
DVM
2007-04-24 15:12
2008.01.06
Почему начинает подтормаживать сервер.


15-1196462298
Kostafey
2007-12-01 01:38
2008.01.06
С днем рождения ! 1 декабря


4-1181989365
cosinus
2007-06-16 14:22
2008.01.06
Как с помощью WinAPI расшарить папку на удаленном компе?


15-1196636662
DevilDevil
2007-12-03 02:04
2008.01.06
Поддерживаются ли в Ini комментарии ?




   Наверх