国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#多線程數(shù)組模擬socket

2020-01-24 00:35:57
字體:
供稿:網(wǎng)友

本文實(shí)例為大家分享了C#多線程數(shù)組模擬socket的具體代碼,供大家參考,具體內(nèi)容如下

代碼如下

//實(shí)例化線程組  Thread[] clientThreads = new Thread[numThread];  for (int i = 0; i < numThread; i++)  {    clientThreads[i] = new Thread(new ParameterizedThreadStart(SocketClient));    clientThreads[i].Start(i);  }

多線程組模擬socket發(fā)送

static void SocketClient(object s)  {   //本機(jī)地址字符串   string strAddress = (13010001000 + Convert.ToInt32(s)).ToString() + "0";   IPHostEntry ipHost = Dns.Resolve(ipServer);   IPAddress ipAddress = ipHost.AddressList[0];   IPEndPoint ipEndPoint = new IPEndPoint(ipAddress, portServer);   //實(shí)例化套接字   Socket socketClient = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);   try   {    socketClient.Connect(ipEndPoint);    WriteLine(string.Format("Successfully connected to {0}! Socket Client {1}", socketClient.RemoteEndPoint, strAddress));    byte[] byteAddr = new byte[6];    byteAddr[0] = Convert.ToByte(strAddress.Substring(0, 2), 0x10);    byteAddr[1] = Convert.ToByte(strAddress.Substring(2, 2), 0x10);    byteAddr[2] = Convert.ToByte(strAddress.Substring(4, 2), 0x10);    byteAddr[3] = Convert.ToByte(strAddress.Substring(6, 2), 0x10);    byteAddr[4] = Convert.ToByte(strAddress.Substring(8, 2), 0x10);    byteAddr[5] = Convert.ToByte(strAddress.Substring(10, 2), 0x10);    Packet pkt = new Packet();    byte[] heartpkt = pkt.SendHeartPkt(byteAddr, addrTarget);    int times = timerdata / timerheart;    Random rd = new Random();    while (true)    {     for (int i = 0; i < times - 1; i++)     {      socketClient.Send(heartpkt);      WriteLine(string.Format("Send: {0}! /r/n Socket Client {1}", pkt.BytesToStr(heartpkt), strAddress));      System.Threading.Thread.Sleep(1000 * timerheart);     }     UInt16 i1 = (UInt16)rd.Next(100);     UInt16 i2 = (UInt16)rd.Next(100);     UInt16 i3 = (UInt16)rd.Next(100);     UInt16 i4 = (UInt16)rd.Next(100);     UInt16 i5 = (UInt16)rd.Next(100);     byte[] byte1 = BitConverter.GetBytes(i1);     byte[] byte2 = BitConverter.GetBytes(i2);     byte[] byte3 = BitConverter.GetBytes(i3);     byte[] byte4 = BitConverter.GetBytes(i4);     byte[] byte5 = BitConverter.GetBytes(i5);     byte[] databyte = new byte[10];     databyte[0] = byte1[1];     databyte[1] = byte1[0];     databyte[2] = byte2[1];     databyte[3] = byte2[0];     databyte[4] = byte3[1];     databyte[5] = byte3[0];     databyte[6] = byte4[1];     databyte[7] = byte4[0];     databyte[8] = byte5[1];     databyte[9] = byte5[0];     byte[] datapkt = pkt.SendDataPkt(byteAddr, addrTarget, databyte);     socketClient.Send(datapkt);     WriteLine(string.Format("Send: {0}! /r/n Socket Client {1}", pkt.BytesToStr(datapkt), strAddress));     System.Threading.Thread.Sleep(1000 * timerheart);    }   }   catch (Exception ex)   {    WriteLine(string.Format("Exception:{0} /r/n Socket Client {1}", ex.ToString(), strAddress));   }  }

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 阿尔山市| 镇巴县| 抚远县| 铁力市| 淮南市| 肃南| 西青区| 洮南市| 清苑县| 修武县| 西充县| 许昌县| 台州市| 德格县| 合山市| 噶尔县| 隆昌县| 安新县| 尤溪县| 文成县| 正安县| 宝山区| 房山区| 定安县| 扶余县| 太仓市| 遂昌县| 土默特右旗| 克什克腾旗| 会昌县| 九寨沟县| 莎车县| 金川县| 含山县| 正镶白旗| 桂阳县| 喀什市| 安泽县| 新安县| 遂川县| 克什克腾旗|