TURBO PASCAL

Новости

Программы   

Turbo Pascal 

Игры

Документация   

Странности

FAQ

Ссылки

Форум

Гостевая книга

Рассылка

Благодарности

Об авторе

 

 

Управление памятью 

             В типичном сеансе работы с Windows множество приложений мно-
        гократно открываются и закрываются,  поэтому нерационально загру-
        жать каждое приложение в память после предыдущего - Windows скоро
        исчерпает память.  Вместо этого Windows, чтобы удовлетворить пот-
        ребности других приложений или самой  Windows,  может  перемещать
        память большинства приложений в другую часть памяти или на диск.

             Таким образом, приложение Windows должно соответствовать ди-
        намическому распределению памяти Windows и избегать прямого обра-
        щения к адресам памяти. Например, традиционный указатель на ячей-
        ку памяти может быстро стать недопустимым,  когда  Windows  пере-
        распределит память, так как может указывать на ячейку памяти, ко-
        торая используется для чего-то еще.
             Вместо указателей Windows использует описатели,  которые  по
        существу представляют  собой указатели на указатели.  Описатели -
        это номера,  использующиеся в качестве индексов  в  обслуживаемой
        Windows таблице  указателей.  Таким  образом,  приложения Windows
        ссылаются на окно или содержимое экрана (область для  отображения
        на экране) по описателю. Имеются также указатели экземпляров при-
        ложений, строк,  средств отображения и ресурсов, таких как меню и
        пиктограммы.

             При обычной  работе  вам  не потребуется иметь дело с самими
        описателями. Вы можете выделять и освобождать память в динамичес-
        ки распределяемой  области  с  помощью  обычных  подпрограмм New,
        Dispose, GetMem и FreeMem,  а Borland Pascal будет взаимодейство-
        вать с  Windows  и обеспечивать для нее информацию о том,  на что
        фактически ссылаются эти указатели.

             Одним из основных преимуществ управления памятью  в  Windows
        является возможность совместно использовать в приложениях скомпи-
        лированный код. Например, если пользователь выполняет два экземп-
        ляра одного  и  того же приложения,  то эти приложения используют
        один и тот же скомпилированный код в памяти. Аналогично, приложе-
        ние может  динамически  загружать библиотечный модуль,  совместно
        используемый в нескольких прикладных программах.  Это  называется
        динамически компонуемой библиотекой - DLL.

Содержание

На первую страницу

Rambler's Top100 Rambler's Top100
PROext: Top 1000

(с)Все права защищены

По всем интересующим вопросам прошу писать на электронный адрес

Hosted by uCoz