110,545
社区成员
发帖
与我相关
我的任务
分享
TcpClient 客户端 = new TcpClient();
客户端.Connect("data.gateio.io", 80);
String 头 = "GET /api2/1/orderBook/smt_eth HTTP/1.1\r\nHost: data.gateio.io\r\nConnection: keep-alive\r\n\r\n";
Byte[] 字节 = Encoding.UTF8.GetBytes(头);
客户端.Client.Send(字节);
字节 = new Byte[10240];
Int32 长度 = 客户端.Client.Receive(字节);
String 输出 = Encoding.UTF8.GetString(字节, 0, 长度);
继续讨论,假设我实例化TcpClient(),并且Connect之后,程序里有多处同时发起Send和Receive,那发送和接受可能产生不匹配的问题吗?TcpClient 客户端 = new TcpClient();
客户端.Connect("data.gateio.io", 80);
String 头 = "GET /api2/1/orderBook/smt_eth HTTP/1.1\r\nHost: data.gateio.io\r\nConnection: keep-alive\r\n\r\n";
Byte[] 字节 = Encoding.UTF8.GetBytes(头);
客户端.Client.Send(字节);
字节 = new Byte[10240];
Int32 长度 = 客户端.Client.Receive(字节);
String 输出 = Encoding.UTF8.GetString(字节, 0, 长度);
消息框.Text = 输出;
是不是能这样理解,只要第一行的客户端实例不被销毁,复用第2-9行,
就是所谓的连接不释放?从而可以获得比HttpWebRequest 更快的速度?