winform 客户端发起并发连接如何实现?
目的,为服务端和服务器制造并发连接以及传输大批量数据的压力
客户端:可瞬时对同一IP同端口发起并发量大的连接
客户端有个按钮,按下去就开启发起并发量大的连接
单线程代码如下
Thread sendThread = new Thread(delegate()
{
//实例化 套接字 (ip4寻址协议,流式传输,TCP协议)
socketSend = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
//创建 ip对象
IPAddress address = IPAddress.Parse(this.remoteIP.Trim());
//创建网络节点对象 包含 ip和port
IPEndPoint endpoint = new IPEndPoint(address, this.remotePort);
try
{
socketSend.Connect(endpoint);
}
catch (Exception ex)
{
this.lbl_alertMessages.Text = ex.Message.ToString();
return;
}
if (socketSend.Connected)
{
//一个timer,按照reportPeriodicTime的时间来发送数据
reportTimer.AutoReset = true;
reportTimer.Interval = this.reportPeriodicTime * 1000;
//SendMessages(发送数据方法)
reportTimer.Elapsed += new System.Timers.ElapsedEventHandler(SendMessages);
reportTimer.Enabled = true;
}
});
sendThread.Start();
------解决方案--------------------
线程池,c#本身有一个线程池,你可以用一下
------解决方案--------------------
用线程池吧