同时创建多个socket如何解决?
目的,为服务端和服务器制造并发连接以及传输大批量数据的压力
客户端:可瞬时对同一IP同端口发起并发量大的连接,并且保持这些连接不断开。
客户端有个按钮,按下去就开启发起并发量大的连接
按钮点击事件里面
#region
//在这里tcpCounts为要并发的连接数量
for (int i = 0; i < this.tcpCounts; i++)
{
ThreadPool.QueueUserWorkItem(delegate { UseThreadPool(); });
}
#endregion
//使用连接池方法
private void UseThreadPool()
{
// 实例化 套接字 (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() + this.threadName;
return;
}
if (socketSend.Connected)
{
reportTimer.AutoReset = true;
reportTimer.Interval = this.reportPeriodicTime * 1000;
reportTimer.Elapsed += new System.Timers.ElapsedEventHandler(SendMessages);
reportTimer.Enabled = true;
}
}
报的是"在一个已经连接的套接字上做了一个连接请求"错误
请问如何解决呢?
------解决方案--------------------
创建多个socket 为何解?
给你一个例子吧 http://blog.csdn.net/fengyarongaa/article/details/6631953