当前位置: 首页 > news >正文

网站群建设项目招标公告中国建设银行企业网站首页

网站群建设项目招标公告,中国建设银行企业网站首页,手机制作视频的软件哪个好,青海风控平台安卓版一. ThreadPool简介 ThreadPool简介#xff1a;ThreadPool是一个线程池#xff0c;当你需要开启n个线程时候#xff0c;只需把这个指令抛给线程池#xff0c;它将自动分配线程进行处理#xff0c;它诞生于.Net 2.0时代。 ThreadPool与Thread的区别#xff1a; ①#xf…一. ThreadPool简介 ThreadPool简介ThreadPool是一个线程池当你需要开启n个线程时候只需把这个指令抛给线程池它将自动分配线程进行处理它诞生于.Net 2.0时代。 ThreadPool与Thread的区别 ①Thread每开启一个异步任务就需要使用一个Thread具有专一性即使Thread已经死掉仍然需要占用资源。 ②ThreadPool能实现n个线程处理nm个异步任务且没有死线程默认都是初始化的。 二. 深究ThreadPool类 1QueueUserWorkItem方法将方法排入队列以便开启异步线程它有两个重载。 aQueueUserWorkItem(WaitCallback callBack)WaitCallback是一个有一个object类型参数且无返回值的委托 bQueueUserWorkItem(WaitCallback callBack, object state)WaitCallback是一个有一个object类型参数且无返回值的委托state即WaitCallback中需要的参数 不推荐这么使用存在拆箱装箱的转换问题影响性能。 使用方式 a严格的卡定义的写法第一个重载和第二个重载均是处理有一个参数的函数大于一个参数需要封装一个实体类所需参数在实体类的构造函数中引入然后调用第一个重载即可. 不推荐这种写法 通用写法 (可以处理任何参数个数的方法)这里不使用n即可。  ThreadPool.QueueUserWorkItem((n) {   TestThread2(i.ToString(),i.ToString()); }); 通用写法的简化版 ThreadPool.QueueUserWorkItem(n TestThread2(i.ToString(), i.ToString())); 代码如下 2线程等待有局限性的 利用ManualResetEvent类和WaitOne方法,多个线程的话需要写for循环。 运行结果 3常用方法 a设置工作线程和IO线程的最大和最小值SetMaxThreads和SetMinThreads。 b获取工作线程和IO线程最大、最小、可用值GetMaxThreads、GetMinThreads、GetAvailableThreads。 测试结果 三. 扩展一个定时器功能 1RegisterWaitForSingleObject类但是不常用.涉及到定时任务建议使用Quartz.Net 2System.threading命名空间下的Thread类,通过查看源码构造函数中有四个参数第一个是object参数的委托第二个是委托需要的值 第三个是调用 callback 之前延迟的时间量以毫秒为单位 第四个是 调用 callback 的时间间隔以毫秒为单位 1 private void button12_Click(object sender, EventArgs e)2 {3 Stopwatch watch new Stopwatch();4 watch.Start();5 Console.WriteLine(----------------- button_Click 开始 主线程id为{0} --------------------------, Thread.CurrentThread.ManagedThreadId);6 7 #region 01-RegisterWaitForSingleObject8 //{9 // //每隔3s开启一个线程执行业务逻辑 10 // ThreadPool.RegisterWaitForSingleObject(new AutoResetEvent(true), new WaitOrTimerCallback((obj, b) 11 // { 12 // //做逻辑判断编写业务逻辑 13 // Console.WriteLine(obj{0}tid{1}, datetime{2}, obj, Thread.CurrentThread.ManagedThreadId, DateTime.Now); 14 15 // }), hello world, 3000, false); 16 //} 17 #endregion 18 19 #region 02-Timer类 20 { 21 //2秒后开启该线程然后每隔4s调用一次 22 System.Threading.Timer timer new System.Threading.Timer((n) 23 { 24 //书写业务逻辑 25 Console.WriteLine(我是子线程中的业务逻辑哦); 26 }, 1, 2000, 4000); 27 } 28 #endregion 29 30 31 watch.Stop(); 32 Console.WriteLine(----------------- button_Click 结束 主线程id为{0} 总耗时{1}--------------------------, Thread.CurrentThread.ManagedThreadId, watch.ElapsedMilliseconds); 33 34 }
http://www.zqtcl.cn/news/497386/

相关文章:

  • 建设工程资质证书二维码扫描网站自己做的网站如何让qq登录
  • 网站域名有效期wordpress 特别慢
  • 建立个人网站服务器如何用dedecms做网站
  • php网站开发实市场推广策略 包括哪些
  • 合众商道网站开发可以投稿的写作网站
  • 北京贸易公司网站制作免费的查企业的网站
  • 网站建设报价表模板下载小程序怎么找出来
  • 网站制作简单协议wordpress快速建站教程视频教程
  • 杭州做网站价格北京企业响应式网站建设
  • 30个成功的电子商务网站设计中企动力 网站报价
  • php 网站开发 视频百度seo排名查询
  • 网站开发代码wordpress提示安装
  • 网站推广的策略高端网球拍
  • 广东知名网站建设wordpress 用户量
  • asp源代码网站网络架构图是什么
  • 专业做淘宝网站公司吗苏州网站制作开发
  • 电商网站模板html安阳历史
  • seo快速排名多少钱安阳网站怎么优化
  • 如何在网站后台删除栏目阿里巴巴上做网站要多少钱
  • 网站建设意识形态工作河北省两学一做网站
  • 綦江建站哪家正规php做不了大型网站吗
  • 优秀的设计网站青岛网站设计企业
  • 谁有做爰网站号wordpress 4.8 中文
  • 毕业设计做网站用什么广州中智软件开发有限公司
  • 哪个网站不花钱可以做招聘wordpress没有页脚
  • 免费视频网站素材网络系统管理技能大赛
  • 聊天网站建设网站建设毕业设计评价
  • 网站建设 内容缺乏域名备案要多久
  • 产品展示型网站建设全国新冠疫苗接种率
  • 网站建设商如何自建商城和电商平台