Главная страница
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.085 c
15-1348811854
MonoLife
2012-09-28 09:57
2013.03.22
Подскажите по проектировке таблиц БД.


15-1344860028
IGray
2012-08-13 16:13
2013.03.22
Автоматизация обновления Indy10 для Delphi 2009


15-1333119005
Baks
2012-03-30 18:50
2013.03.22
#10008 - replace hard disk1


15-1345045733
xayam
2012-08-15 19:48
2013.03.22
Расчет площади участка


8-1228319255
SpecRam
2008-12-03 18:47
2013.03.22
Типа календарный план график