|
| БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО! |
|
|
GlobalLock
The GlobalLock function locks a global memory object and returns a pointer to the first byte of the object's memory block. The memory block associated with a locked memory object cannot be moved or discarded. For memory objects allocated with the GMEM_MOVEABLE flag, the function increments the lock count associated with the memory object.
LPVOID GlobalLock(
HGLOBAL hMem // address of the global memory object );
Parameters
hMem
Identifies the global memory object. This handle is returned by either the GlobalAlloc or GlobalReAlloc function.
Return Values
If the function succeeds, the return value is a pointer to the first byte of the memory block. If the function fails, the return value is NULL. To get extended error information, call GetLastError.
Remarks
The internal data structures for each memory object include a lock count that is initially zero. For movable memory objects, GlobalLock increments the count by one, and the GlobalUnlock function decrements the count by one. For each call that a process makes to GlobalLock for an object, it must eventually call GlobalUnlock. Locked memory will not be moved or discarded, unless the memory object is reallocated by using the GlobalReAlloc function. The memory block of a locked memory object remains locked until its lock count is decremented to zero, at which time it can be moved or discarded.
Memory objects allocated with the GMEM_FIXED flag always have a lock count of zero. For these objects, the value of the returned pointer is equal to the value of the specified handle. If the specified memory block has been discarded or if the memory block has a zero-byte size, this function returns NULL. Discarded objects always have a lock count of zero.
See Also
GlobalAlloc, GlobalFlags, GlobalReAlloc, GlobalUnlock
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
GlobalLock
Функция GlobalLock запирает глобальную память возражать и возвращает указатель в первый байт объектного блока памяти. Блок памяти связанный закрытым объектом памяти не может быть перемещен или отвергнут. Для объектов памяти распределенных флагом GMEM_MOVEABLE, функция увеличивает счет замка связанный объектом памяти.
LPVOID GlobalLock(
АДРЕС HGLOBAL hMem // глобального объекта памяти );
Параметры
hMem
Идентифицирует глобальный объект памяти. Эта ручка возвращана или GlobalAlloc или функция GlobalReAlloc.
Обратные Величины
Если функция добивается успеха, обратная величина является указателем в первый байт блока памяти. Если функция терпит неудачу, обратная величина НЕДЕЙСТВИТЕЛЬНА. Для того, чтобы расширять информацию ошибки, назовите GetLastError.
Замечания
Внутренние структуры данных для каждого объекта памяти включают счет блокировки, который первоначально нулевой. Для подвижных объектов памяти, GlobalLock увеличивает счет одним, и функциональные декременты GlobalUnlock счет одним. Для каждого вызова, что процесс делает на GlobalLock для объекта, он должен в конечном счете назвать GlobalUnlock. Закрытая память не будет перемещена или отвергнута, если объект памяти reallocated использованием функции GlobalReAlloc. Блок памяти объектных остатков закрытой памяти запертой пока счет блокировки не будет decremented в нуль, в котором время может быть перемещено или отвергнуто.
Объекты Памяти распределенные GMEM_FIXED сигнализируют всегда иметь счет блокировки нуля. Для этих объектов, величина возвращанного указателя равняется величине определенной ручки. Если определенный блок памяти отвергнут или если блок памяти имеет нулевой-байтовый размер, этот функциональный возврат НЕДЕЙСТВИТЕЛЬНЫЕ. Сброшенные объекты всегда имеют счет блокировки нуля.
Смотри Также
GlobalAlloc, GlobalFlags, GlobalReAlloc, GlobalUnlock
|
|
|
|
| |