在 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 未被占用'。

Golang UDP端口占用检测:如何判断端口是否被占用

原文地址: https://www.cveoy.top/t/topic/dPXm 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录