next up previous contents
Next: Режимы блокировки Up: Блокировка файлов Previous: Необходимость блокировки   Contents

Структура flock

Эта структура используется для управления блокировкой и имеет следующее содержание:

struct flock{

  short l_type; /*3 режима блокирования

                   F_RDLCK(Разделение чтения)

                   F_WRLCK (Разделение записи)

                   F_UNLCK (Прекратить разделение)*/

  off_t l_start; /*относительное смещение в байтах,

                  зависит от l_whence*/

  short l_whence; /*SEEK_SET;SEEK_CUR;SEEK_END*/

  off_t l_len; /*длина, 0=разделение до конца файла*/

  pid_t l_pid; /*идентификатор, возвращается F_GETLK */

};

Перед установкой режима блокирования файла необходимо заполнить поля структуры flock нужным образом:

flockptr.l_start=0; /*начнем со смещения 0*/

flockptr.l_whence=SEEK_SET; /*с начала файла*/

Если необходимо дописывать в конец файла, то l_len принимает значение 0.

flockptr.l_len=0;
В этом случае файл блокируется до его конца.



2004-06-22