На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: Qraizer, Hsilgos
  
> Как осущиствить блокировку файлов
    Народ, подскажите как блокировать файл целиком на чтение и на запись, а так-же проверять наличие блокировки и ждать пока она не будет снята. Наподобе как это делаеться в perl:


    use Fcntl qw(:flock);

    sub getlock {
    open(SEM, ">lock");
    flock(SEM, LOCK_EX);
    }

    sub unlock {
    close(SEM);
    }


    getlock() - блокирует файл
    unlock() - разблокирует его


    Сэнкс!
    Сообщение отредактировано: Michail04 -
      Открой его с помощью CreateFile с dwShareMode = 0, или, как вариант использовать LockFileEx()...
        Сэнкс, но помоему это чисто виндовые функции, а как это в *nix организовать?
          fcntl с аргументом F_SETLK или F_SETLKW.
            Цитата trainer,7.02.04, 16:33
            fcntl с аргументом F_SETLK или F_SETLKW.

            Cэнкс! F_SETLKW - это то, что надо!

            Сам я когда ман по fcntl читал этот аргумент пропустил...
            1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script execution time: 0,0224 ]   [ 15 queries used ]   [ Generated: 21.05.24, 18:22 GMT ]