diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/shared/Networking/AsyncAcceptor.h | 6 | ||||
-rw-r--r-- | src/server/worldserver/Main.cpp | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/src/server/shared/Networking/AsyncAcceptor.h b/src/server/shared/Networking/AsyncAcceptor.h index c54471fd01a..fbb0313381e 100644 --- a/src/server/shared/Networking/AsyncAcceptor.h +++ b/src/server/shared/Networking/AsyncAcceptor.h @@ -33,6 +33,12 @@ public: AsyncAccept(); }; + AsyncAcceptor(boost::asio::io_service& ioService, std::string bindIp, int port, bool tcpNoDelay) : + AsyncAcceptor(ioService, bindIp, port) + { + _socket.set_option(boost::asio::ip::tcp::no_delay(tcpNoDelay)); + }; + private: void AsyncAcceptor::AsyncAccept() { diff --git a/src/server/worldserver/Main.cpp b/src/server/worldserver/Main.cpp index ff53c91e7b6..dae947b7324 100644 --- a/src/server/worldserver/Main.cpp +++ b/src/server/worldserver/Main.cpp @@ -228,8 +228,9 @@ extern int main(int argc, char** argv) // Launch the worldserver listener socket uint16 worldPort = uint16(sWorld->getIntConfig(CONFIG_PORT_WORLD)); std::string worldListener = sConfigMgr->GetStringDefault("BindIP", "0.0.0.0"); + bool tcpNoDelay = sConfigMgr->GetBoolDefault("Network.TcpNodelay", true); - AsyncAcceptor<WorldTcpSession> worldAcceptor(_ioService, worldListener, worldPort); + AsyncAcceptor<WorldTcpSession> worldAcceptor(_ioService, worldListener, worldPort, tcpNoDelay); sScriptMgr->OnStartup(); |