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

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

Привет!

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

SELECT GET_LOCK('myKey', 10);

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

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

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

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

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

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

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

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

Войдите, чтобы написать о чем-нибудь...
Вход Регистрация
Web.onRails
Здесь вы можете спросить или написать обо всём, что касается Веб-разработки.
написать о чем-нибудь...
Метки:
Лучшее
[52]
16 Окт 2011, 15:38
Вывести все элементы POST
[просмотров 14595]
[74]
31 мая 2011, 11:48
Python проверка существования переменной
[просмотров 10259]
[100]
19 Дек 2014, 16:16
User-agent для Internet Explorer 11
[просмотров 9599]
[4]
10 Окт 2018, 15:33
Как запретить просмотр сайта по IP?
[просмотров 9169]
[125]
21 Июл 2011, 14:04
Python Imaging Library (PIL)
[просмотров 7440]
[315]
11 Авг 2011, 00:21
Спецификация HTML5 от W3C
[просмотров 7368]
[315]
16 Июл 2011, 20:03
Python работа с MySQL
[просмотров 5343]

Вести с Хабра