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

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

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

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

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

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


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