Привет!
Я делаю блокировку обращения к данным используя функцию GET_LOCK.
SELECT GET_LOCK('myKey', 10);
Второй пользователь обращается к данным с тем же ключом. Как проверить занята ли блокировка?
Если я опять вызову GET_LOCK с тем же ключом, то старый вызов просто сбросится, а мне нужно ждать пока первый пользователь не сделает RELEASE_LOCK или его приложение не завершит работу.
Делаете запрос:
Если функция вернула 0, значит линия занята.
Крутите это в цикле и спите по секунде, пока возвращается ноль.