powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / flock() rlock
12 сообщений из 12, страница 1 из 1
flock() rlock
    #34570216
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет!
Есть таблица общего доступа. Все пишут, читают, помечают на удаление, добавляют...
Вопрос, собственно, наверно, странный - а нужно ли использование таких команд, как FLOCK и RLOCK?
...
Рейтинг: 0 / 0
flock() rlock
    #34570217
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Fox9.0
...
Рейтинг: 0 / 0
flock() rlock
    #34570544
Valerii
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
СМОТРЯ КАКИЕ ПРИЕМЫ ИСПОЛЬЗОВАТЬ.
Если использоватьть буферизации, то эти вещи необязательны...
...
Рейтинг: 0 / 0
flock() rlock
    #34570563
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ValeriiСМОТРЯ КАКИЕ ПРИЕМЫ ИСПОЛЬЗОВАТЬ.
Если использоватьть буферизации, то эти вещи необязательны...

А без буферизации?
...
Рейтинг: 0 / 0
flock() rlock
    #34571601
sar99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
Вопрос зависит не всегда от выбора приема , но и от логики программы.
Например у Вас две таблицы - таблица заголовков (каких-то сущностей
например заявок на комплектующие) и таблица состава
Естественно что пока один пользователь корректирует состав
он, до конца корректировки, неактуален для других пользователей
для внесения ими своих корректировок (но может быть просмотрено
предыдущее состояние)
Тогда можно воспользоваться функцией rlock() для временного блокирования
в первой таблице заголовочной записи заявки. Другие пользователи при попытке
входа на просмотр загрузят состав из второй таблицы на просмотр,а при попытке
входа на корректировку получат сообщение что ресурс занят другим пользователем.

В Вашем случае - таблицы куда все пишут корректируют и удаляют
можно пользоваться как функцией rlock() для записи которую пользователь
намерен обновить(удалить) так и оптимистической буферизацией строк
(смотри варианты в HELP).
В последнем случае для фиксации результатов надо использовать
функцию tableupdate() а при неуспешном обновлении функцию tablerevert()

Функцию flock() - блокировки таблицы желательно не применять
(вернее строить логику обработки данных так чтобы ее не применять!)
...
Рейтинг: 0 / 0
flock() rlock
    #34571663
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ясненько, спасибо.
А flock() ведь приходится применять при добавлении записи!
...
Рейтинг: 0 / 0
flock() rlock
    #34571677
Urri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем так сурово поступать?
________
Не дадим распространиться заразе политкорректности!
...
Рейтинг: 0 / 0
flock() rlock
    #34571690
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
UrriА зачем так сурово поступать?
________
Не дадим распространиться заразе политкорректности!

А разве append blank не требует блокировки таблицы?
...
Рейтинг: 0 / 0
flock() rlock
    #34571698
Sergey Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
StandD А разве append blank не требует блокировки таблицы?
Просто многие вещи FoxPro блокирует автоматом на минимально короткое время. Могу дать совет - используйте 99% того, что FoxPro предлагает с блокировками самостоятельно. Все это подробно описано в Help про многопользовательскую работу/концепцию...

Good luck!
...
Рейтинг: 0 / 0
flock() rlock
    #34571724
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо.
...
Рейтинг: 0 / 0
flock() rlock
    #34571741
sar99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кстати в многопользовательской среде и
append blank
желательно не применять.
пользуйтесь
insert into алиас таблицы (поля) values (значения)
...
Рейтинг: 0 / 0
flock() rlock
    #34571975
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Принял. Спасибо.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / flock() rlock
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]