第八节: Quartz.Net五大构件之SimpleThreadPool及其四种配置方案
一. 简介
揭秘: SimpleThreadPool是Quartz.Net中自带的线程池,默认个数为10个,代表一个Scheduler同一时刻并发的最多只能执行10个job,超过10个的job需要排队等待。
二. 四种配置方案
1. NameValueCollection的方式
需要利用StdSchedulerFactory的构造函数进行传进去,向哪个Sheduler中传,即配置哪个Sheduler的对应的线程池。
代码分享:
1 {2 var pairs = new System.Collections.Specialized.NameValueCollection() { };3 pairs.Add("quartz.threadPool.ThreadCount", "20"); //设置线程池个数为204 5 var factory = new StdSchedulerFactory(pairs); //将前面的配置加到Scheduler工厂中6 var scheduler = factory.GetScheduler();7 scheduler.Start();8 9 var meta = scheduler.GetMetaData(); 10 int threadPoolSize = meta.ThreadPoolSize; 11 Console.WriteLine("线程池的个数为:{0}", threadPoolSize); 12 }
2. App.config的方式配置,
详见:App.config文件,该模式代码中不需要进行任何的额外配置,适用于所有的Sheduler。
配置文件代码分享:
1 <?xml version="1.0" encoding="utf-8" ?>2 <configuration>3 <!--线程池个数设置 开始-->4 5 <configSections>6 <section name="quartz" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.5000.0,Culture=neutral, PublicKeyToken=b77a5c561934e089"/>7 </configSections>8 <quartz>9 <!--设置Sheduler的线程池个数为22--> 10 <add key="quartz.threadPool.threadCount" value="22"/> 11 </quartz> 12 13 <!--线程池个数设置 结束--> 14 <startup> 15 <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6"/> 16 </startup> 17 </configuration>
3. quartz.config文件的形式进行配置
该模式代码中不需要进行任何的额外配置,适用于所有的Sheduler。
用法:新建名为"quartz.config"的xml文件,在文件中写入:quartz.threadPool.threadCount=15 代表线程池个数设置为15, 同时要把该文件的属性设置为始终复制,使其可以生产到bin文件。
分享一下quartz.config中的代码
PS:就一句话哦。
1 quartz.threadPool.threadCount=15
4. 通过代码设置电脑的环境变量来实现
一句代码:Environment.SetEnvironmentVariable("quartz.threadPool.threadCount", "26"); 设置后,适用于所有的Sheduler。
代码分享:
{//将线程池的个数设置为26Environment.SetEnvironmentVariable("quartz.threadPool.threadCount", "26");var factory = new StdSchedulerFactory();var scheduler = factory.GetScheduler();scheduler.Start();var meta = scheduler.GetMetaData();int threadPoolSize = meta.ThreadPoolSize;Console.WriteLine("线程池的个数为:{0}", threadPoolSize);}
总结:以上4种方式的优先级为:quartz.config < app.config < 环境变量 < namevaluecollection
第八节: Quartz.Net五大构件之SimpleThreadPool及其四种配置方案相关推荐
- 第三节: Quartz.Net五大构件之Scheduler(创建、封装、基本方法等)和Job(创建、关联等)
一. 五大构件 引言: Quartz.Net的五大构件 1. 调度器:Scheduler 2. 作业任务:Job 3. 触发器: Trigger 4. 线程池: SimpleThreadPoo ...
- 第四节: Quartz.Net五大构件之Trigger通用用法(常用方法、优先级、与job关联等)
一. 简介 1. 几个类型: ①:TriggerBuilder:用来创建ITrigger实例 ②:ITrigger:触发器实例 2.常用的几个方法 ①.StartNow:Trigger马上触发. ②. ...
- 第五节: Quartz.Net五大构件之Trigger的四大触发类
一. WithSimpleSchedule(ISimpleTrigger) 1. 用途:时.分.秒上的轮询(和timer类似),实际开发中,该场景占绝大多数. 2. 轮询的种类:永远轮询和限定次数轮询 ...
- Quartz.net官方开发指南 第十课: 配置、资源使用以及SchedulerFactory
Quartz以模块方式构架,因此,要使它运行,几个组件必须很好的咬合在一起.幸运的是,已经有了一些现存的助手可以完成这些工作. 在Quartz进行工作之前需要被配置的组件主要有: • ThreadPo ...
- Quartz+Spring 自定义作业调度(作业在DB中配置)
为什么80%的码农都做不了架构师?>>> Quartz版本为1.8.3 Spring版本为2.5 自定义作业表 QRTZ_JOB. 其中定义 作业标识.作业名称.类名.触发器名 ...
- 使用quartz实现任务动态设置,从数据库获取配置时间
Spring + quartz 2.2.3 xml配置 xml文件 <?xml version="1.0" encoding="GBK"?> ...
- plc控制可调节阀流程图_PLC五大主流编程语言你会几种?
PLC的软件编程语言与一般计算机语言相比,具有明显的特点,它既不同于高级语言,也不同于一般的汇编语言,且要满足易于编写和调试的要求. 早期的PLC仅支持梯形图编程语言和指令表编程语言,现根据国际电工委 ...
- 五大地形等高线特征_五种基本地形特征
<五种基本地形特征>由会员分享,可在线阅读,更多相关<五种基本地形特征(13页珍藏版)>请在人人文库网上搜索. 1.,五种基本地形特征,.,湖南教育版,等高线地形图,.,地形图 ...
- 使用免费RPA软件系统 构件自己的自动化流程 安装配置教程
这里我们使用的是国产免费RPA软件系统:小瓶RPA ①第一步,官网下载基座程序 下载地址: https://rpa.pbottle.com/ 如图所示: ②第二步安装 Nodejs 如果电脑已 ...
最新文章
- Codeforces Gym 100513G G. FacePalm Accounting 暴力
- 人工智能正在激活互联网类脑系统,2018年,云脑将成为新热点
- 利用jQuery获取jsonp
- ADO.NET编程小错误
- 【C 语言】文件操作 ( 按照内存块的方式读写文件 | fread 函数 | fwrite 函数 )
- PAT甲级1025 PAT Ranking:[C++题解]排序、结构体、排名
- 台湾国立大学郭彦甫Matlab教程笔记(14)polynomial differentiation多项式微分
- Interview:算法岗位面试—10.24下午—上海某软件公司(机器学习,上市)电话面试—考察SVM、逻辑回归、降低过拟合、卷积网络基础等
- Python cv2 摄像头
- 反编译exe软件_【娱乐向】exe逆向工程(破译《游戏开发课》老师的成绩程序)...
- 如何移植.NET Framework项目至.NET Core?
- Finished yeah!
- olcd12864的u8g2库_Arduino为什么无法用u8g2驱动12864OLED屏?求找出错误
- 使用Groovy将一段代码动态构造成一个类的方法
- 斐讯盒子t1 刷Android,斐讯盒子T1/N1刷机流水账
- 爬取b站最火up主及其粉丝信息
- 启动计算机键盘没反应,为什么键盘没反应了 键盘没反应原因分析及解决方法...
- 【社会相关】:大神写的考研政治复习攻略
- CMU 15213:attack实验
- 采购行业权威证书对比
热门文章
- 145. Binary Tree Postorder Traversal
- [Oracle整理]CASE-END
- 【数据结构与算法】二分查找
- 关于set的自定义比较函数的使用及结构体的上下二分用法
- c语言实验报告熟悉vc,C语言实验报告源代码
- xml生成2维码_MyBatis(2)之MyBatis-Generator最佳实践
- vue编写to-do list源码
- 计算机excel知识点一级,2012年计算机一级考试高分必看知识点:EXCEL
- 1634C. OKEA
- 数据插不进mysql_数据插入不进数据库里面去。