Предположим, у меня есть мое клиентское приложение, и он подключается к серверу MySQL. Фантастика. Я не реализую это как поток. Я просто использую класс MySQLConnection.Возможно ли создать событие и обработать его, если соединение с сервером MySQL будет потеряно?
А теперь предположим, что Джим, который действительно небрежно относится к офису, случайно перезагружает сервер MySQL, не спрашивая разрешения в первую очередь.
Я хочу знать, когда происходит отключение, поэтому клиентское приложение известно, и пользователь не получает много ошибок.
Я могу придумать несколько способов проверить это, но я не знаю, будут ли они работать, и даже если они элегантны в дизайне. Мне было интересно, что вы, ребята, считали самым подходящим способом.
- Осуществить подключение как нить и проверить его каждые х секунд (если это вообще возможно)
- Создать и обработать событие, когда соединение падает (вид зависит от точки выше)
- Может быть, есть событие, встроенный в библиотеку MySQL Connector, что я даже не в курсе
- Некоторые другие мистические темные кода, что я не в курсе
Любая помощь очень высоко ценится.
Редактировать: На этот вопрос был дан ответ в комментариях. Спасибо за прочтение.
Эндрю, я думаю, что сохранение соединения открытым является плохой практикой, вы должны открыть/закрыть для каждой операции – tekBlues
Ха-ха, удивительная. Я всегда думал, что соединение должно оставаться открытым, пока вы его используете, и не забудьте закрыть его в конце. Мне нравится этот сайт. –
@tekBlues - иногда полезно поддерживать открытые соединения, если они очень заняты - по соображениям производительности. –