首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C#中简单线程池的代码

在C#中,简单线程池可以通过使用System.Threading.ThreadPool类来实现。以下是一个简单的示例代码:

代码语言:csharp
复制
using System;
using System.Threading;

class Program
{
    static void Main()
    {
        // 将线程池中的工作线程数设置为4
        ThreadPool.SetMinThreads(4, 4);

        // 将线程池中的工作线程数设置为20
        ThreadPool.SetMaxThreads(20, 20);

        // 创建一个任务队列
        for (int i = 0; i < 100; i++)
        {
            ThreadPool.QueueUserWorkItem(new WaitCallback(MyTask), i);
        }

        Console.ReadLine();
    }

    static void MyTask(object state)
    {
        int taskId = (int)state;
        Console.WriteLine($"Task {taskId} is running on thread {Thread.CurrentThread.ManagedThreadId}");
        Thread.Sleep(1000);
        Console.WriteLine($"Task {taskId} is completed");
    }
}

在这个示例中,我们首先设置了线程池中的最小和最大工作线程数。然后,我们创建了一个任务队列,其中包含100个任务。每个任务都将在线程池中的一个工作线程上运行。我们使用ThreadPool.QueueUserWorkItem方法将任务添加到线程池中。最后,我们在控制台上输出了每个任务的运行状态。

这个简单的线程池示例展示了如何使用C#中的线程池来并行执行多个任务,从而提高程序的性能和响应速度。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

共22个视频
JavaWeb阶段入门教程-EL表达式+JSP【动力节点】
动力节点Java培训
通过本课程的学习,使大家掌握JSP开发,充分认知JSP在实际项目开发中的重要作用。 jsp从表现上看更像是前端组件,只是传统的html代码加入了java脚本的综合操作。但是在本质上,jsp同时又是servlet。
共50个视频
动力节点-SVN控制技术专题精讲教程-上
动力节点Java培训
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。
共9个视频
动力节点-SVN控制技术专题精讲教程-下
动力节点Java培训
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。
共17个视频
动力节点-JDK动态代理(AOP)使用及实现原理分析
动力节点Java培训
动态代理是使用jdk的反射机制,创建对象的能力, 创建的是代理类的对象。 而不用你创建类文件。不用写java文件。 动态:在程序执行时,调用jdk提供的方法才能创建代理类的对象。jdk动态代理,必须有接口,目标类必须实现接口, 没有接口时,需要使用cglib动态代理。 动态代理可以在不改变原来目标方法功能的前提下, 可以在代理中增强自己的功能代码。
领券