C# 实例化多线程组
代码如下
//实例化线程组
Thread[] clientThreads = new Thread[numThread];
; i < numThread; i++)
{
clientThreads[i] = new Thread(new ParameterizedThreadStart(SocketClient));
clientThreads[i].Start(i);
}
多线程组模拟socket发送
static void SocketClient(object s)
{
//本机地址字符串
+ Convert.ToInt32(s)).ToString() + ";
IPHostEntry ipHost = Dns.Resolve(ipServer);
IPAddress ipAddress = ipHost.AddressList[];
IPEndPoint ipEndPoint = new IPEndPoint(ipAddress, portServer);
//实例化套接字
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));
];
byteAddr[] = Convert.ToByte(strAddress.Substring(, ), 0x10);
byteAddr[] = Convert.ToByte(strAddress.Substring(, ), 0x10);
byteAddr[] = Convert.ToByte(strAddress.Substring(, ), 0x10);
byteAddr[] = Convert.ToByte(strAddress.Substring(, ), 0x10);
byteAddr[] = Convert.ToByte(strAddress.Substring(, ), 0x10);
byteAddr[] = Convert.ToByte(strAddress.Substring(, ), 0x10);
Packet pkt = new Packet();
byte[] heartpkt = pkt.SendHeartPkt(byteAddr, addrTarget);
int times = timerdata / timerheart;
Random rd = new Random();
while (true)
{
; i < times - ; i++)
{
socketClient.Send(heartpkt);
WriteLine(string.Format("Send: {0}! \r\n Socket Client {1}", pkt.BytesToStr(heartpkt), strAddress));
System.Threading.Thread.Sleep( * timerheart);
}
UInt16 i1 = (UInt16)rd.Next();
UInt16 i2 = (UInt16)rd.Next();
UInt16 i3 = (UInt16)rd.Next();
UInt16 i4 = (UInt16)rd.Next();
UInt16 i5 = (UInt16)rd.Next();
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);
];
databyte[] = byte1[];
databyte[] = byte1[];
databyte[] = byte2[];
databyte[] = byte2[];
databyte[] = byte3[];
databyte[] = byte3[];
databyte[] = byte4[];
databyte[] = byte4[];
databyte[] = byte5[];
databyte[] = byte5[];
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( * timerheart);
}
}
catch (Exception ex)
{
WriteLine(string.Format("Exception:{0} \r\n Socket Client {1}", ex.ToString(), strAddress));
}
}
C# 实例化多线程组的更多相关文章
- Jmeter登录后Session自动共享与多线程组并行
在接口测试中,出于安全考虑接口是需要session才能访问.另外在此基础上,我们还可能模拟不同的客户端登录,需要并行运行移动端线程组. 实现session共享1)修改jmeter安装目录bin下的jm ...
- jmeter 多线程组间变量共享
jmeter的线程组之间是相互独立的,各个线程组互不影响,所以线程组A中输出的参数,是无法直接在线程组B中被调用的. 但是有时为了方便管理,我们可能是把各个接口单独存放在不同的线程组中.拿Cookie ...
- JMeter跨线程组保持登录(多线程组共享cookie)
使用__setProperty设置全局变量: 1.jmeter中创建一个登录请求,然后执行,察看结果树-->查看返回cookie信息,我的是在Response data中的 Response h ...
- Java多线程编程核心技术---拾遗增补
线程状态验证 public class MyThread extends Thread { public MyThread() { System.out.println("构造方法中的状态: ...
- Java线程组(ThreadGroup)使用
JDK 对线程组类注释: A thread group represents a set of threads. In addition, a thread group can also includ ...
- C# 多线程辅助类实现多任务
1)首先实现一个多线程的辅助类,代码如下: public class ThreadMulti { public delegate void DelegateComplete(); public del ...
- C# 多线程任务分配辅助类
1)首先实现一个多线程的辅助类,代码如下: public class ThreadMulti { public delegate void DelegateComplete(); public del ...
- 剖析虚幻渲染体系(15)- XR专题
目录 15.1 本篇概述 15.1.1 本篇内容 15.1.2 XR概念 15.1.2.1 VR 15.1.2.2 AR 15.1.2.3 MR 15.1.2.4 XR 15.1.3 XR综述 15. ...
- JAVA学习Swing章节按钮组件JButton的简单学习
package com.swing; import java.awt.Container; import java.awt.Dimension; import java.awt.GridLayout; ...
随机推荐
- 分布式架构高可用架构篇_06_MySQL源码编译安装(CentOS-6.7+MySQL-5.6)
redhat: 下载:http://dev.mysql.com/downloads/mysql/ 选择5.6 source包 解压 cmake . -DCMAKE_INSTALL_PREFIX=/us ...
- CSS3系列:流式(弹性)布局(flex布局)
我的新伸缩盒子.http://www.cnblogs.com/leee/p/5533436.html
- but this usually doesn’t gain you anything.
High Performance My SQL, Third Edition Date and Time Types My SQL has many types for various kinds o ...
- jquery autocomplete插件结合ajax使用
<%@ page isELIgnored="false"%> <%@ page contentType="text/html; charset=UTF- ...
- 透明、圆角、阴影效果、背景色渐变、<a></a>去外层虚线、!!!表格标签<table>
表格标签 <table> 代表表格 width:指表格的宽度 一种是像素 (浏览器缩小的时候出现滚动条) 一种是百分比(跟着浏览器的大小而大小) b ...
- transform animation transition css3动画
transform 定义 transform 属性向元素应用 2D 或 3D 转换.该属性允许我们对元素进行旋转.缩放.移动或倾斜. 值 应用 如果transform与transition联合起 ...
- 蓝牙—服务发现协议(SDP)
服务搜索协议(SDP)提供了应用发现可用服务以及确定可用服务特点的方法.SDP发现协议提供下面的能力 <1>为客户提供搜索所需要服务的能力. <2>允许基于服务类型搜索服务 & ...
- SQL查询的几种方式
/* 左连接 left join 或者 left outer join */ /* 左连接 Table_A表数据全部显示,Table_B根据条件匹配Table_A 匹配上显示,否则显示NULL */ ...
- SQL backup&restore
--完整备份Backup Database NorthwindCSTo disk='G:\Backup\NorthwindCS_Full_20070908.bak' --差异备份Backup Data ...
- sphinx续4-coreseek的工作原理
原文地址:http://blog.itpub.net/29806344/viewspace-1399621/ 在分析sphix原理之前,我先澄清一下为什么经常出现coreseek这个词? 因为sphi ...