C#线程函数调用方式

C#中线创建线程调用线程函数有2种方式:

1,调用不带参数的线程函数

2,调用带参数的线程函数

 

       在不传递参数情况下,一般大家都使用ThreadStart代理来连接执行函数。执行函数声明格式如下:

 public static void ThreadProc();

如果希望传递参数给执行函数,则使用ParameterizedThreadStart代理来链接执行函数,这时执行函数要声明成下面的形式

 public static void ThreadProc(object nParam);

其中object nParam就是要传递的参数,之所以使用object类型,那是因为nParam可以是任何class类型,这样你就可传递任何类型给执行函数,实参是通过Thread.Start(object)方法传递给ExeProc函数的。

 using System;

using System.Threading;

public class ThreadTest

{

      public static void Main()

     {

       Thread  newThread1 = new Thread(new ParameterizedThreadStart(ThreadProc1));

       newThread.Start(42);  

       Thread newThread2 = new Thread(new ThreadStart(ThreadProc2));

        newThread2.Start();

     }

 

     public static void ThreadProc1(object data)

    {

         Console.WriteLine("Static thread procedure. Data='{0}'",data);

     }

 

     public static void ThreadProc2()

     {

         Console.WriteLine("Static thread procedure. no param");

     }

}

你可能感兴趣的:(C#线程函数调用方式)