当前位置: 首页>>代码示例>>C#>>正文


C# ThreadStart代理代码示例

本文整理汇总了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
 */
开发者ID:.NET开发者,项目名称:System.Threading,代码行数:53,代码来源:ThreadStart

示例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();
  }
}
开发者ID:C#程序员,项目名称:System.Threading,代码行数:17,代码来源:ThreadStart


注:本文中的System.Threading.ThreadStart代理示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。