gpt4 book ai didi

ios - IOS上使用BlueSocket框架的TCP连接问题

转载 作者:行者123 更新时间:2023-11-29 05:23:45 25 4
gpt4 key购买 nike

使用 BlueSocket 框架在 Mac 和 IOS 之间连接时出现“错误代码:-9989(0x-2705),连接被拒绝”错误。

逻辑如下:

我将 Mac 视为服务器:

// making TCP IPV4 socket
try self.listenSocket = Socket.create(family: .inet, type: .stream, proto: .tcp)

// start lisening port of 8888
try socket.listen(on: self.port)

// accept client connection when there is
let newSocket = try socket.acceptClientConnection()

// keep opening and reading data ....

iPhone 作为客户端:

self.socket = try Socket.create(family: .inet)
try self.socket?.connect(to: ip, port: 8888)
try self.socket?.setReadTimeout(value: readWriteTimeOut)
try self.socket?.setWriteTimeout(value: readWriteTimeOut)
self.socket?.readBufferSize = Socket.SOCKET_MAXIMUM_SSL_READ_BUFFER_SIZE
  1. 客户端第一次与服务器连接工作正常。
  2. 服务器收到数据后,客户端自动关闭套接字。
  3. 客户端尝试使用上面相同的代码再次连接服务器以发回数据。然后显示错误!

我认为默认情况下,当服务器端使用socket.listen时,它会将SO_REUSEADDR设置为true

需要有关如何解决此问题的建议。谢谢!

最佳答案

只需确保 socket.acceptClientConnection() 的 while 循环始终打开......

关于ios - IOS上使用BlueSocket框架的TCP连接问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58387087/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com