Ожидание события из-за обновления базы данных - PullRequest
0 голосов
/ 17 августа 2010

Я использую базу данных MYSQL как форму хранилища данных IPC между веб-клиентом и процессом кода C в Linux Debian.Когда веб-клиент записывает некоторые данные в базу данных mysql с помощью php-скрипта, мне нужно, чтобы мое приложение C-кода отправлялось и собирало эти данные.

Однако я не хочу, чтобы приложение C постоянно опрашивало какой-либо флаг, чтобы проверить, если данныедоступен.В любом случае, поток может ожидать какого-либо события из базы данных mysql или чего-то, что при сигнале позволит разблокировать и обработать данные

Спасибо

Ответы [ 2 ]

0 голосов
/ 27 августа 2010

пожалуйста, предоставьте весь сценарий.Я предполагаю, что вы можете использовать СОБЫТИЯ в сочетании с таблицей (для флагов) для достижения такого рода функциональности.Я работаю над аналогичной проблемой.Если бы вы могли предоставить подробное описание, это может быть полезно.В моем случае у меня есть триггер, который устанавливает флаг для определенных записей в той же таблице для обновления и включает планировщик событий, затем событие обновляет помеченные записи и отключает планировщик событий.

0 голосов
/ 17 августа 2010

То, что вы пытаетесь сделать, немного громоздко, но это может сработать.

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

trigger вызовет определяемая пользователем функция (UDF) , которая в свою очередь будет сигнализировать ваш код C, чтобы начать обработку вновь вставленных данных.

Вам даже не нужно писать свой собственный UDF.Вы можете использовать sys_exec из библиотеки lib_mysqludf_sys для выполнения внешней программы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...