Как я могу изящно остановить сервер uWebSockets?

Как я мог выйти из run() позвоните в официальный пример? Например, после получения сигнала.

uWS::SSLApp({

/* There are tons of SSL options */
.cert_file_name = "cert.pem",
.key_file_name = "key.pem"
}).onGet("/", [](auto *res, auto *req) {

/* Respond with the web app on default route */
res->writeStatus("200 OK")
->writeHeader("Content-Type", "text/html; charset=utf-8")
->end(indexHtmlBuffer);

}).onWebSocket<UserData>("/ws/chat", [&](auto *ws, auto *req) {

/* Subscribe to topic /chat */
ws->subscribe("chat");

}).onMessage([&](auto *ws, auto message, auto opCode) {

/* Parse incoming message according to some protocol & publish it */
if (seemsReasonable(message)) {
ws->publish("chat", message);
} else {
ws->close();
}

}).onClose([&](auto *ws, int code, auto message) {

/* Remove websocket from this topic */
ws->unsubscribe("chat");

}).listen("localhost", 3000, 0).run();

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]