Pistache:如何设置 TCP 服务器选项,例如 SO_REUSEADDR
Pistache: how to set TCP server options, for example SO_REUSEADDR
我开始用 Pistache 做一些测试,我想知道如何设置 TCP 选项。就像在下面的示例中一样,我想将 SO_REUSEADDR
设置为服务器套接字。
#include <pistache/endpoint.h>
using namespace Pistache;
struct HelloHandler : public Http::Handler {
HTTP_PROTOTYPE(HelloHandler)
void onRequest(const Http::Request&, Http::ResponseWriter writer) override{
writer.send(Http::Code::Ok, "Hello, World!");
}
};
int main() {
Http::listenAndServe<HelloHandler>(Pistache::Address("*:9080"));
}
listenAndServe()
有一个可选的 options
参数,Options
class 有一个 ReuseAddr
标志定义(和一个 ReusePort
标志), 例如:
int main() {
auto opts = Http::Endpoint::options();
opts.flags(Tcp::Options::ReuseAddr);
// set other options as needed...
Http::listenAndServe<HelloHandler>(Pistache::Address("*:9080"), opts);
}
我开始用 Pistache 做一些测试,我想知道如何设置 TCP 选项。就像在下面的示例中一样,我想将 SO_REUSEADDR
设置为服务器套接字。
#include <pistache/endpoint.h>
using namespace Pistache;
struct HelloHandler : public Http::Handler {
HTTP_PROTOTYPE(HelloHandler)
void onRequest(const Http::Request&, Http::ResponseWriter writer) override{
writer.send(Http::Code::Ok, "Hello, World!");
}
};
int main() {
Http::listenAndServe<HelloHandler>(Pistache::Address("*:9080"));
}
listenAndServe()
有一个可选的 options
参数,Options
class 有一个 ReuseAddr
标志定义(和一个 ReusePort
标志), 例如:
int main() {
auto opts = Http::Endpoint::options();
opts.flags(Tcp::Options::ReuseAddr);
// set other options as needed...
Http::listenAndServe<HelloHandler>(Pistache::Address("*:9080"), opts);
}