Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

Блокировка файла.   Найти похожие ветки 

 
Дмитрий С ©   (2012-03-10 17:08) [0]

Добрый день. А есть какой-нибудь универсальный способ заблокировать файл потоком (процессом), чтобы выполнить операции (чтения и записи) с ним как-бы атомарно. А другие потоки (процессы) чтобы ждали пока файл не разблокируется?
Желательно чтобы этот механизм был таким простым, чтобы и в linux-е был.


 
DVM ©   (2012-03-10 17:14) [1]


> А другие потоки (процессы) чтобы ждали

твои или чужие?


 
Дмитрий С ©   (2012-03-10 17:40) [2]


> твои или чужие?

все мои.


 
DVM ©   (2012-03-10 18:25) [3]


> Дмитрий С ©   (10.03.12 17:40) [2]


> все мои.

ну тогда с помощью мьютекса (лучше Global\) можно организовать такую блокировку.


 
Игорь Шевченко ©   (2012-03-10 19:57) [4]

LockFile


 
Дмитрий С ©   (2012-03-10 20:19) [5]

Спасибо, Игорь Шевченко, то что нужно.


> DVM ©   (10.03.12 18:25) [3]

Способ хороший, и первый что в голову пришел, но есть проблемы с реализацией под линухом.


 
DVM ©   (2012-03-10 20:32) [6]


> но есть проблемы с реализацией под линухом.
>
>

какие?


 
Дмитрий С ©   (2012-03-10 21:28) [7]


> DVM ©   (10.03.12 20:32) [6]

Ну если смеяться не будете, то нужен механизм блокировки (синхронизации) для реализации на PHP. Там есть функция flock, которая реализована и под windows и под linux . А вот с другими методами синхронизации в PHP туго, не для этого он всетаки предназначен.


 
palva ©   (2012-03-10 23:44) [8]

Вот здесь об этом пишут: http://reslib.com/book/PHP_5#376


 
Дмитрий С ©   (2012-03-11 01:30) [9]


> palva ©   (10.03.12 23:44) [8]

Спасибо. Нашел там важное замечание, которое не учел.



Страницы: 1 вся ветка

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.061 c
15-1338398557
Биос
2012-05-30 21:22
2013.03.22
Три звуковых сигнала из системника.


6-1262631738
Антон80
2010-01-04 22:02
2013.03.22
Проблема с темой письма в TIdSMTP


2-1333815031
novichek
2012-04-07 20:10
2013.03.22
правильная передача параметров в процедуру


2-1348073809
123456789igor
2012-09-19 20:56
2013.03.22
цикл в цикле


15-1353292991
MonoLife
2012-11-19 06:43
2013.03.22
Принтер Canon LBP-1120, HP LaserJet 1005 в Win 7 64 bit.