C#__线程池的简单介绍和使用

cs 复制代码
    /*
    线程池原理:(有备无患的默认备用后台线程)
    特点:线程提前建好在线程池;只能用于运行时间较短的线程。
     */
    class Program
    {
        static void Main(string[] args)
        {
            for (int i = 0; i < 10; i++)
            {
                ThreadPool.QueueUserWorkItem(Download); // 将Download函数放入线程池,并调用
                Thread.Sleep(1000);
                Console.WriteLine(i);
            }
        }

        static void Download(Object state) // 使用ThreadPool.QueueUserWorkItem,线程需要有一个Object state参数
        {
            for(int i = 0; i < 3; i++)
            {
                Console.WriteLine("Downloading......" + Thread.CurrentThread.ManagedThreadId); // ManagedThreadId 一个整数,表示此托管线程的唯一标识符。
                Thread.Sleep(1000);
            }
        }
    }
相关推荐
周杰伦fans13 小时前
C# CAD 二次开发:无需启动 AutoCAD 实现 DWG 转 DXF 的完整技术指南
开发语言·c#
影寂ldy14 小时前
C# 多态与函数重载(静态多态)
开发语言·c#
小满Autumn15 小时前
依赖注入设计模式速查手册
开发语言·c#·wpf·mvvm·依赖注入
z落落15 小时前
C# 静态成员 vs 非静态成员(调用规则+内存特点)+只读和常量 const常量 / readonly / static readonly 三者终极区别
java·开发语言·c#
Xin_ye1008616 小时前
C# 零基础到精通教程 - WPF 专题三:高级控件与自定义控件
开发语言·c#·wpf
xiaoshuaishuai816 小时前
C# AvaloniaUI‌的IValueConverter
开发语言·c#
z落落16 小时前
C# 虚方法(virtual)与抽象方法 +区别+new方法隐藏 & override方法重写
java·开发语言·c#
xiaoshuaishuai817 小时前
C# Avalonia UI的ItemControl
开发语言·ui·c#
etp_17 小时前
C#异步编程
c#
Xin_ye1008618 小时前
C# 零基础到精通教程 - WPF 深度专题:自定义布局与性能优化
开发语言·c#·wpf