ThreadPool.QueueUserWorkItem启动慢

ThreadPool.QueueUserWorkItem启动慢一、问题描述ThreadPool.QueueUserWorkItem启动慢,在项目过程中发现当线程数量达到一定量的时候发线线程启动速度慢,影响了正常的实时性业务。二、解决方法加入ThreadPool.SetMinThreads(1000,1000)后,整个进程启动变块。如图1和图2,变快了。…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、问题描述

    ThreadPool.QueueUserWorkItem启动慢,在项目过程中发现当线程数量达到一定量的时候发线线程启动速度 慢,影响了正常的实时性业务。

二、解决方法

   加入  ThreadPool.SetMinThreads(1000, 1000) 后,整个进程启动变块。如图1 和图2  ,变快了。

                                                                                                            图1

ThreadPool.QueueUserWorkItem启动慢

                                                                                                         图2

ThreadPool.QueueUserWorkItem启动慢

 

demo :

        static void Main(string[] args)
        {
            ThreadPool.SetMinThreads(1000, 1000);
            Console.WriteLine("开始第1个五十线程");
            for (int i = 0; i < 50; i++)
            {
                Console.WriteLine("准备开始第1个五十线程,线程" + i);
                ThreadPool.QueueUserWorkItem((object o) =>
                {
                    try
                    {
                        var item = o as Tuple<int>;
                        
                        Console.WriteLine("开始第1个五十线程,线程"+item.Item1);
                        Thread.Sleep(10000);
                    }
                    catch (Exception e)
                    {
                       
                    }
                }, new Tuple<int>(i));
                
            }
   

 

转载于:https://www.cnblogs.com/musexiaoluo/p/9798952.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/192718.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • docker容器和主机同网段_docker桥接模式下外网访问

    docker容器和主机同网段_docker桥接模式下外网访问首先我们需要了解的是:每个docker容器都是隔离的,所以它们之间是相互不同的!那么我们开始操作起来,让他们之间可以相互ping通网络。。。一、拉取镜像创建容器1.在这之前首先关闭防火墙;如果显示runinng则执行:sudosystemctlstopfirewalld2.在https://hub.docker.com里拉取镜像busybox(注:busybox相当于小型的c…

    2025年10月25日
    5
  • c语言数组定义(详细)「建议收藏」

    c语言数组定义(详细)「建议收藏」数组:什么是数组:变量的组合,是一种定义变量的手段。定义:类型数组名[数量];数组定义后,默认值同样不确定,因此也需要初始化。intarr[5]<==>intnum1,num2,num3,num4,num5;使用:数组名[编号]编号(下标)从0开始,范围[0,数量-1]遍历:配合for循环从头到尾显示,循环变量i就当做数组的下标。intarr[5];f…

    2022年7月22日
    11
  • linux中解压rar文件

    linux中解压rar文件linux平台默认是不支持RAR文件的解压,需要安装linux版本的RAR压缩软件,下载地址为:http://www.rarlab.com/download.htm下载之后进行解压之后,进入rar目录,运行make指令进行安装:[root@localhostrar]#lsacknow.txtlicense.txtorder.htmrarfiles.lstrar.txt

    2022年7月15日
    12
  • c语言中的位移位操作

    c语言中的位移位操作

    2021年12月2日
    41
  • 最常见的24个逻辑错误_数学主要错误分析原因

    最常见的24个逻辑错误_数学主要错误分析原因前言:最近使用阿里云windows2008R2云服务器搭建网站QQ互联接入(第三方登录)服务的过程中,使用了phpcmsV9提供的V9.6.3压缩包内的.htaccess文件。几经辗转,仍然没能解决过程中遇到的问题,问了一些技术大咖,有人说可能是500错误。以前知道有400报错,还真不知道有个500错误,所以上网查询之后,觉得应该小结一篇。1.造成500错误常见原因有:ASP语法出…

    2022年4月20日
    54
  • oracle 10g数据库连接时,错误ora12514 解决办法

    oracle 10g数据库连接时,错误ora12514 解决办法主要注意三点:1。在oracle安装目录下,..\oracle\product\10.2.0\db_1\NETWORK\ADMIN修改listener.ora文件,SID_LIST_LISTENER =  (SID_LIST =    (SID_DESC =      (SID_NAME = PLSExtProc)      (ORACLE_HOME = D:\oracle

    2022年7月15日
    38

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号