本文整理汇总了C#中System.Threading.ThreadStart代理的典型用法代码示例。如果您正苦于以下问题:C# ThreadStart代理的具体用法?C# ThreadStart怎么用?C# ThreadStart使用的例子?那么, 这里精选的代理代码示例或许可以为您提供帮助。
ThreadStart代理属于System.Threading命名空间,在下文中一共展示了ThreadStart代理的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Main
//引入命名空间
using System;
using System.Threading;
class Test
{
static void Main()
{
// To start a thread using a static thread procedure, use the
// class name and method name when you create the ThreadStart
// delegate. Beginning in version 2.0 of the .NET Framework,
// it is not necessary to create a delegate explicitly.
// Specify the name of the method in the Thread constructor,
// and the compiler selects the correct delegate. For example:
//
// Thread newThread = new Thread(Work.DoWork);
//
ThreadStart threadDelegate = new ThreadStart(Work.DoWork);
Thread newThread = new Thread(threadDelegate);
newThread.Start();
// To start a thread using an instance method for the thread
// procedure, use the instance variable and method name when
// you create the ThreadStart delegate. Beginning in version
// 2.0 of the .NET Framework, the explicit delegate is not
// required.
//
Work w = new Work();
w.Data = 42;
threadDelegate = new ThreadStart(w.DoMoreWork);
newThread = new Thread(threadDelegate);
newThread.Start();
}
}
class Work
{
public static void DoWork()
{
Console.WriteLine("Static thread procedure.");
}
public int Data;
public void DoMoreWork()
{
Console.WriteLine("Instance thread procedure. Data={0}", Data);
}
}
/* This code example produces the following output (the order
of the lines might vary):
Static thread procedure.
Instance thread procedure. Data=42
*/
示例2: new ThreadStart(delegate )
//引入命名空间
using System;
using System.Threading;
class MainClass {
public static void Countdown() {
for (int i = 10; i > 0; i--) {
Console.Write(i.ToString() + " ");
}
}
public static void Main() {
Thread t2 = new Thread(new ThreadStart(Countdown));
t2.Start();
}
}