VDS за 300р от нашего партнера SpaceWeb
[45]
30 мая 2012, 11:35

Блокировка GET_LOCK как проверить блокировку

Привет!

Я делаю блокировку обращения к данным используя функцию GET_LOCK.

SELECT GET_LOCK('myKey', 10);

Второй пользователь обращается к данным с тем же ключом. Как проверить занята ли блокировка?
Если я опять вызову GET_LOCK с тем же ключом, то старый вызов просто сбросится, а мне нужно ждать пока первый пользователь не сделает RELEASE_LOCK или его приложение не завершит работу.

#mysql

Комментарии (1)
grom 30.05.2012 17:11

Есть функция IS_FREE_LOCK.

Делаете запрос:

SELECT IS_FREE_LOCK('myKey') as `lock`;

Если функция вернула 0, значит линия занята.

Крутите это в цикле и спите по секунде, пока возвращается ноль.
+2

Добавить комментарий

Войдите, чтобы написать о чем-нибудь...
Вход Регистрация
Web.onRails
Найди ответ на любой вопрос по Веб-разработке!
задать вопрос...
Вы можете разместить Рекламный пост самостоятельно, либо отправив контент по адресу admin@webonrails.ru→ Оплата здесь ←Неоплаченные посты удаляются.
Метки:
Лучшее
[52]
16 Окт 2011, 15:38
Вывести все элементы POST
[просмотров 18877]
[100]
19 Дек 2014, 16:16
User-agent для Internet Explorer 11
[просмотров 12423]
[74]
31 мая 2011, 11:48
Python проверка существования переменной
[просмотров 12139]
[4]
10 Окт 2018, 15:33
Как запретить просмотр сайта по IP?
[просмотров 9695]
[125]
21 Июл 2011, 14:04
Python Imaging Library (PIL)
[просмотров 9156]
[315]
11 Авг 2011, 00:21
Спецификация HTML5 от W3C
[просмотров 7401]
[315]
16 Июл 2011, 20:03
Python работа с MySQL
[просмотров 5924]

Вести с Хабра