c++释放正在使用的udp端口
我目前正在为 Halo 的专用服务器开发一个附加组件,但是服务器经常会崩溃,而端口仍然在使用中。
因此,当程序在崩溃后重新启动时,它不会在内部(本地主机)或通过互联网传输任何信息。
我们可以做的是向我们的插件添加一个函数,该函数会在程序启动时自动释放/使端口可用,然后让程序再次自行初始化,以便它正常工作。
然而,我们目前对 c++ 中的 udp 或网络编程一无所知,所以我们基本上是在问是否有人知道这是否可能(或解决此问题的其他方法)以及如何在 Windows 中用 c++ 实现此目的。
我们已经用谷歌搜索了一些,但找不到任何有用的东西。
I am currently working on an add-on for a dedicated server of halo, however the server tends to crash every now and then and the port stays in use.
So when the program is restarted after a crash it doesn't transmit any information internally (localhost) or over the internet.
What we could do is add a function to our addon that automatically Releases/makes the port available at the start of the program and then let the program initialize it self again so it works fine.
However we have no knowledge about udp or network programming in c++ at this moment, so we are basically asking if someone knows if this is possible(or some other way of fixing this problem) and how to make this in c++ for windows.
We already googled some but couldn't find anything useful.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
程序应该使用套接字选项 SO_REUSEADDR,这将允许在程序重新启动后使用套接字。
The program should use the socket option SO_REUSEADDR, this will allow using the socket after program restart.