Описание функций Си

Lock



     lock

Функция Блокирует доступ к части файла.

Синтаксис #include

int lock(int handle, long offset, long length);

Файл, содержащий io.h прототип

Описание lock позволяет вам использовать механизм разделения доступа к файлам введенный в DOS 3.x. Перед исполь- зованием этой функции необходимо загрузить SHARE.EXE.

С помощью данной функции можно заблокировать лю- бые неперекрывающиеся области файла. Программа, пытающаяся считывать или записывать в блоки- рованной облясти файла, делает три попытки. Если все три попытки окончились неудачей, то операция заканчивается по ошибке.

Возвращаемое Функция возвращает 0 при успешном значение завершении, и -1 при ошибке.

Переносимость Функция уникальна для систем DOS версий 3.x. Более ранние версии DOS не поддерживают этих вызовов.

Смотрите также

Пример:

#include

#include

#include

#include

#include

#include

int main(void) { int handle,status; long length; /* для поддержки разделения файлов необходимо пред- варительно загрузить SHARE.EXE. */ handle = sopen("c:\\autoexec.bat", O_RDONLY, SH_DENYNO, S_IREAD); if(!handle) { printf("Ошибка при операции sopen"); exit(1); } length = filelength(handle); status = lock(handle,0L,length/2); if(status == 0) printf("Успешная операция блокировки"); else printf("Ошибка при операции блокировки"); status = unlock(handle,0L,length/2); if(status == 0) printf("Успешная операция разблокировки"); else printf("Ошибка при операции разблокировки"); close(handle); return 0; }



Содержание раздела