zoukankan      html  css  js  c++  java
  • C# 学习历程——线程

      线程负责在单个应用程序中执行多任务。System.Threading命名空间提供了大量的类和接口来管理线性编程。

      创建一个线程的最简单的方法就是创建Thread类的一个新的实例。让Thread构造函数接受一个参数——一个委托实例。CLR专门为这种用途提供了ThreadStart委托类,它会指向你指定的一个方法,它允许你构造一个线程。ThreadStart委托的声明如下:

      

    piblic delegate void ThreadStart();

      使用线程

    using System;
    using System.Threading;
    
    namespace ConsoleApplication4
    {
        class Tester
        {
            static void Main(string[] args)
            {
                Tester t = new Tester();
    
                Console.WriteLine("Hello");
    
                t.DoTest();
            }
    
            public void DoTest()
            {
                Thread t1 = new Thread(new ThreadStart(Incrementer));
    
                Thread t2 = new Thread(new ThreadStart(Decrementer));
    
                t1.Start();
                t2.Start();
            }
    
            public void Incrementer()
            {
                for(int i = 0; i < 1000; i++)
                {
                    System.Console.WriteLine("Incrementer: {0}", i);
                }
            }
    
            public void Decrementer()
            {
                for(int i = 1000; i >= 0; i--)
                {
                    System.Console.WriteLine("Decrementer: {0}", i);
                }
            }
        }
    }

      处理器允许第一个线程执行一段时间直到向上计数到某个数时,第二个线程就会被执行。两个线程反复切换。

  • 相关阅读:
    c# netcore 发送http请求并接收返回数据
    CentOS7 nginx安装与卸载
    c# 取出特定标签的内容 去除html标签
    dotnet运行项目
    hangfire自定义访问api接口
    10万个数中取最大的10个数
    指定的服务已标记为删除
    gitlab-配置邮件
    gitlab-centos的安装
    ansible-任务控制tags
  • 原文地址:https://www.cnblogs.com/tjuwx/p/4477674.html
Copyright © 2011-2022 走看看