我们正在尝试使用套接字连接Python服务器而不阻止TCP。我们尝试与其他客户一起工作,就像一个魅力。
server = MyTCPServer((ip_localhost, port), MyTCPServerHandler)
server.socket.setblocking(0)
另一方面,我们有一个像这样的c#unity客户端(我们尝试过很多异步实现)
IPAddress ipAddress = IPAddress.Parse("127.0.0.1");
IPEndPoint remoteEP = new IPEndPoint(ipAddress, port);
// Create a TCP/IP socket.
Socket client = new Socket(AddressFamily.InterNetwork,
SocketType.Stream, ProtocolType.Tcp);
client.Connect(new IPEndPoint(IPAddress.Loopback,port));
client.Blocking = false;
SocketAsyncEventArgs socketAsyncData = new SocketAsyncEventArgs();
string a = @"{""json"":""json_data""}";
_recieveBuffer = GetBytes(a);
socketAsyncData.SetBuffer(_recieveBuffer,0,_recieveBuffer.Length);
client.SendAsync(socketAsyncData);
每次c#客户端尝试发送数据时: [ErrorNo 10035]'套接字操作无法阻止')
我们尝试过:
http://forum.unity3d.com/threads/c-tcp-ip-socket-how-to-receive-from-server.227259/#post-1513674
https://msdn.microsoft.com/en-us/library/bew39x2a.aspx?cs-save-lang=1&cs-lang=csharp#code-snippet-1
但没有结果。
任何人都知道如何在c#中实现一个非阻塞套接字?
感谢。