Предположим, что я писал приложение, где мне нужно было получать уведомления в реальном времени с сервера, и, скажем, эти уведомления сохраняются в базе данных mysql. Для того, чтобы получить их, мне нужно будет продолжать опрос сервера mysql (повторяйте один и тот же запрос до тех пор, пока я не получу результаты), но я считаю, что это очень неэффективный способ сделать это, поскольку большую часть времени выбор будет поворачиваться пустой. Если я часто это делаю, это необоснованно напрягается на сервере, если я редко его уведомляю. Так что мне было интересно, есть ли способ сказать запрос mysql для блокировки, пока не будет получен результат, соответствующий условию.Есть ли способ для MySQL ждать строк, соответствующих условию, которое нужно вставить?
list = query ("SELECT * FROM `notifications` WHERE `unread`=1") ;
вместо того, чтобы возвратить пустой список, если нет непрочитанных уведомлений, было бы вместо того, чтобы ждать, пока есть на самом деле непрочитанные уведомления для возврата
интересная идея, я беру ее, нет другого способа, кроме опроса, спасибо за ancwer :) –
нет другого выхода, поэтому вы хотите сделать свой опрос как можно быстрее.Я должен сказать, что это самые жесткие 10 баллов репутации, которые я когда-либо зарабатывал :) – Bohemian
Я полагаю, что использование таблицы памяти может быть хорошим стимулом здесь –