首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

怎么动态创建线程,并管理线程

2012-03-13 
如何动态创建线程,并管理线程如何动态创建线程,并管理线程。线程数有N个。不知道怎么做。网上搜罗了一遍,没找

如何动态创建线程,并管理线程
如何动态创建线程,并管理线程。
线程数有N个。不知道怎么做。网上搜罗了一遍,没找到答案。需要c#的。


[解决办法]
你写一个线程类,可以用来创建N个线程,然后在用的时候把N个线程放在Hashtable里面,进行管理就行了!
[解决办法]
参照 线程池概念

其实就是个线程的集合 然后主线程 每次 轮训监控!
[解决办法]
临时写个线程类的小例子你看看,希望对你有帮助!

C# code
namespace MyThread{    class MyThread_class    {        Thread thread = null; //创建一个全局线程变量        //用来接收传进来的参数Pt1,可以在RuleMethod方法里面用这个全局变量        string Parameter1;          //当然这里可以另N个参数,数据类型随便定,只要传的时候数据类型一样就行        public MyThread_class(string Pt1)          {            this.Parameter1 = Pt1;        }                public void start()  //线程开启        {            //把你RuleMethod方法放进来            this.thread = new Thread(RuleMethod);              this.thread.Start();        }        public void stop()  //线程停止        {            this.thread.Abort();        }    }}//然后在另一个窗体里面调用这个类,例如Button的Click事件里面Hashtable  Ht_Save_MyThread = new Hashtable();  //新建一个Hashtable全局变量private void button1_Click(object sender, EventArgs e){    for (int i = 0; i < dataSet.Tables[0].Rows.Count; i++)    {        MyThread_class mythread=new  MyThread_class("你要传给线程的参数Pt1");  //实例化一个MyThread_class类的对象         mythread.start();        Ht_Save_MyThread.Add(i,mythread);  //存放MyThread_class类    }}//停止线程private void button2_Click(object sender, EventArgs e){    for (int i = 0; i < dataSet.Tables[0].Rows.Count; i++)    {         MyThread_class Take_Thread = (MyThread_class)Ht_Save_MyThread[i]//从Hashtable里面取MyThread_class类          Take_Thread.stop();    }} 

热点排行