创建线程
时间:2011-05-06 来源:明天陪你看海
创建一个线程非常简单,只需将其声明并为其提供线程起始点处的方法委托即可。创建新的线程时,需要使用Thread类,Thread类具有接受一个ThreadStart委托或ParameterizedThreadStart委托的构造函数,该委托包装了调用Start方法时由新线程调用的方法。创建了Thread类的对象之后,线程对象已存在并已配置,但并未创建实际的线程,这时,只有在调用Start方法后,才会创建实际的线程。
Start方法用来使线程被安排进行执行,它有两种重载形式,下面分别介绍。
(1)导致操作系统将当前实例的状态更改为ThreadState.Running,语法如下。
public void Start ()
(2)使操作系统将当前实例的状态更改为ThreadState.Running,并选择提供包含线程执行的方法要使用的数据的对象。语法如下。
public void Start (Object parameter)
parameter:一个对象,包含线程执行的方法要使用的数据。
注意:如果线程已经终止,就无法通过再次调用Start方法来重新启动。
例 创建一个控制台应用程序,其中自定义一个静态的void类型方法createThread,然后在Main方法中通过实例化Thread类对象创建一个新的线程,然后调用Start方法启动该线程。代码如下。
static void Main(string[] args)
{
Thread myThread; //声明线程
//用线程起始点的ThreadStart委托创建该线程的实例
myThread = new Thread(new ThreadStart(createThread));
myThread.Start();//启动线程
}
public static void createThread()
{
Console.Write("创建线程");
}
注意:线程的入口(本例中为createThread)不带任何参数。