Golang UDP端口占用检测:如何判断端口是否被占用
在 Golang 中,可以使用 'net.ListenUDP()' 函数来尝试监听指定的 UDP 端口,如果端口已经被占用,该函数会返回一个错误。因此,可以通过捕获错误来判断 UDP 端口是否被占用。
以下是一个简单的示例代码:
package main
import (
"fmt"
"net"
)
func main() {
port := 1234
addr := fmt.Sprintf(":%d", port)
// 尝试监听UDP端口
_, err := net.ListenUDP("udp", &net.UDPAddr{Port: port})
if err != nil {
fmt.Printf("UDP端口 %d 已被占用\n", port)
} else {
fmt.Printf("UDP端口 %d 未被占用\n", port)
}
}
在上述代码中,我们尝试监听 UDP 端口 1234,如果端口已经被占用,则会输出'UDP端口 1234 已被占用';如果端口未被占用,则会输出'UDP端口 1234 未被占用'。
原文地址: https://www.cveoy.top/t/topic/dPXm 著作权归作者所有。请勿转载和采集!