Ios CocoaAsyncSocket已发送UDP,但没有响应

Ios CocoaAsyncSocket已发送UDP,但没有响应,ios,swift,sockets,udp,cocoaasyncsocket,Ios,Swift,Sockets,Udp,Cocoaasyncsocket,信息:我的本地网络上有一个设备,它是一个UDP服务器,当我向它发送“hello”时,我会得到一个“how are you”响应,但我不知道IP,所以我必须向本地网络的每个IP发送“hello”以查找该设备 问题:当我直接向我的设备IP发送“hello”时,我会得到响应,但我向每个IP发送“hello”时,大部分时间我都没有收到响应(有时我会收到响应) 我的一些代码: //首先创建GCDAsyncUdpSocket的实例 udpSocket = GCDAsyncUdpSocket(delegate

信息:我的本地网络上有一个设备,它是一个UDP服务器,当我向它发送“hello”时,我会得到一个“how are you”响应,但我不知道IP,所以我必须向本地网络的每个IP发送“hello”以查找该设备

问题:当我直接向我的设备IP发送“hello”时,我会得到响应,但我向每个IP发送“hello”时,大部分时间我都没有收到响应(有时我会收到响应)

我的一些代码:

//首先创建GCDAsyncUdpSocket的实例

udpSocket = GCDAsyncUdpSocket(delegate: self, delegateQueue: DispatchQueue.global())
    do{
                log.debug("bind port")
                try self.udpSocket?.enableReusePort(true)
                try self.udpSocket?.bind(toPort: 0)
                udpBindedToPort = true
                try self.udpSocket?.beginReceiving()
            }catch {
                log.error("error")
                udpBindedToPort = false
                self.delegate?.findDeviceTimeout(0)
                return
            }
//这不起作用

Async.background({[weak self] () in
            for i in 1...255 {
                let targetIP = ip_sub + ".\(i)"
                self?.send(Define.scanDeviceMessage, host: targetIP, tag: Define.scanDeviceTag)
            }
        })
//这很有效

Async.background({[weak self] () in
                let targetIP = "192.168.0.101"
                self?.send(Define.scanDeviceMessage, host: targetIP, tag: Define.scanDeviceTag)
        })
//代表

@objc func udpSocket(_ sock: GCDAsyncUdpSocket, didReceive data: Data, fromAddress address: Data, withFilterContext filterContext: Any?
    ) {
        print("UDP接收到数据 : \(String(data:data, encoding: String.Encoding.utf8))")
    }

谢谢你的帮助,这让我发疯,有时有效,但有时无效,现在不再有效了

有什么消息吗?我也有同样的问题。我在CoCoaGithub页面上发布了一个问题,请参阅:有相关的新闻吗?我也有同样的问题。我在CocoaAsyncSocket github页面上发布了一个问题,请参阅: