Синхронизация работы пользователей

IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.

Модератор: kdv

Ответить
savl
Сообщения: 19
Зарегистрирован: 19 июн 2005, 11:49

Синхронизация работы пользователей

Сообщение savl » 02 окт 2006, 09:38

Как сделать синхронизацию работы клиентских приложений?
Надо что-то вроде мутекса в integrase.
Что бы пока у одного клиента на машине выполняется определеенный вид работы в базой, другой клиент мого определить, что это действие выполняется.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 02 окт 2006, 10:44

генераторы.

savl
Сообщения: 19
Зарегистрирован: 19 июн 2005, 11:49

Сообщение savl » 03 окт 2006, 12:30

Если можно, расскажите поподробнее как это реализовать.
Ведь в Interbase нет процедуры типа WaitForSinglObject, а если я из клиентского приложения буду проверять состояние генератора, а потом устанавливать свое, то в это время другой клиент сможет тоже установить значение.

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Сообщение WildSery » 03 окт 2006, 12:45

Читай http://www.ibase.ru/devinfo/generator.htm до просветления.

Merlin
Динозавр IB/FB
Сообщения: 1502
Зарегистрирован: 27 окт 2004, 11:44

Сообщение Merlin » 03 окт 2006, 13:24

Имхо ему нужно что-то более другое, нежели прерывание селекта. Имхо речь о блокировке записи в спициятельной табличке флагов. Имхо для просветления следует почитать ещё
http://www.ibase.ru/devinfo/pslock.htm

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Сообщение Dimitry Sibiryakov » 03 окт 2006, 13:28

А мое имхо что ему надо траву менять. То бишь откатываться на этап постановки задачи.

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Сообщение WildSery » 03 окт 2006, 13:41

Merlin писал(а):Имхо ему нужно что-то более другое, нежели прерывание селекта.
Там не только прерывание селекта, а как раз и примеры запуска процедуры в единственном экземпляре (раздел "нестандартное применение"). Оттуда можно многое почерпнуть.

savl
Сообщения: 19
Зарегистрирован: 19 июн 2005, 11:49

Сообщение savl » 03 окт 2006, 17:46

Сделал через хранимые процедуры и генераторы.
Работает.

Ответить