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

如何帮公司做网站重庆网站制作公司

如何帮公司做网站,重庆网站制作公司,html5网站图标,佛山微网站建设如果希望微调并发运行时的现有代码的性能,则任务计划程序会很有用。 无法从通用 Windows 平台 (UWP) 应用获取任务计划程序。 在 Visual Studio 2015 及更高版本中,concurrency::task 类和 ppltasks.h 中的相关类型使用 Windows 线程池作为其计划程序。…

如果希望微调并发运行时的现有代码的性能,则任务计划程序会很有用。

无法从通用 Windows 平台 (UWP) 应用获取任务计划程序。 
在 Visual Studio 2015 及更高版本中,concurrency::task 类和 ppltasks.h 中的相关类型使用 Windows 线程池作为其计划程序。 本主题不再适用于在 ppltasks.h 中定义的类型。 并行算法(例如 parallel_for)继续使用并发运行时作为默认计划程序。

并发运行时提供了一个默认计划程序,因此无需在应用程序中创建一个。 由于任务计划程序有助于优化应用程序的性能,如果你刚开始接触并发运行时,建议从使用并行模式库 (PPL) 或异步代理库开始。

任务计划程序在运行时计划和协调任务。 任务是指执行特定作业的工作单元。 任务通常可以与其他任务并行运行。 任务组项、并行算法和异步代理所执行的工作都属于任务示例。

任务计划程序可以管理关于在具有多个计算资源的计算机上高效执行计划任务的详细信息。 任务计划程序还使用基础操作系统的最新功能。 因此,使用并发运行时的应用程序会自动缩放,并提高具有扩展功能的硬件性能。

与其他并发模型进行比较介绍了抢先式和协作式计划机制之间的差异。 任务计划程序将操作系统的抢先式计划程序与协作式计划和工作窃取算法配合使用,以达到处理资源的最大使用率。

并发运行时提供了默认计划程序,因此你无需管理基础结构详细信息。 因此,通常不会直接使用任务计划程序。 但是,为了满足应用程序的质量要求,你可以使用任务计划程序提供自己的计划策略或将计划程序与特定任务相关联。 例如,假设你有一个作用范围不超过四个处理器的并行排序例程。 你可以使用计划程序策略来创建可生成不超过四个并发任务的计划程序。 通过在此计划程序上运行排序例程,可使其他活动计划程序使用剩余的任何处理资源。

计划程序实例

下面介绍了并发运行时中计划程序实例的作用,以及如何使用 concurrency::Scheduler 和 concurrency::CurrentScheduler 类创建和管理计划程序实例。 当你希望将显式计划策略与特定类型的工作负载相关联时,计划程序实例非常有用。 例如,你可以创建一个计划程序实例来以提升的线程优先级运行一些任务,并使用默认计划程序以普通线程优先级运行其他任务。

并发运行时提供了一个默认计划程序,因此无需在应用程序中创建一个。 由于任务计划程序有助于优化应用程序的性能,如果你刚开始接触并发运行时,建议从使用并行模式库 (PPL) 或异步代理库开始。

计划程序和 CurrentScheduler 类

任务计划程序使应用程序能够使用一个或多个计划程序实例来计划工作。 concurrency::Scheduler 类表示计划程序实例,并封装与计划任务相关的功能。

附加到计划程序的线程称为执行上下文(或只是上下文)。 在任何时候都可以有一个计划程序在当前上下文中处于活动状态。 活动计划程序也称为“当前计划程序”。 并发运行时使用 concurrency::CurrentScheduler 类提供对当前计划程序的访问。 一个上下文的当前计划程序可能与另一个上下文的当前计划程序不同。 运行时不提供当前计划程序的进程级表示形式。

通常,CurrentScheduler 类用于处理当前计划程序。 当你需要管理一个不是当前计划程序的计划程序时,Scheduler 类非常有用。

创建计划程序实例

创建 Scheduler 对象的方法有三种:

  • 如果不存在计划程序,运行时会在你使用运行时功能(例如并行算法)执行工作时,为你创建默认计划程序。 默认计划程序将成为启动并行工作的上下文的当前计划程序;
  • concurrency::CurrentScheduler::Create 方法将创建一个使用特定策略的 Scheduler 对象,并将该计划程序与当前上下文相关联;
  • concurrency::Scheduler::Create 方法可创建一个使用特定策略的 Scheduler 对象,但不将其与当前上下文相关联;

允许运行时创建默认计划程序后,所有并发任务就可以共享同一计划程序。 通常,并行模式库 (PPL) 或异步代理库提供的功能可用于执行并行工作。 因此,无需直接使用计划程序来控制其策略或生存期。 当你使用 PPL 或代理库时,运行时会创建默认计划程序(如果它不存在),并使它成为每个上下文的当前计划程序。 当你创建计划程序并将其设置为当前计划程序后,运行时会使用该计划程序来计划任务。 只有当你需要特定的计划策略时,才能创建额外的计划程序实例。

管理计划程序实例的生存期

运行时使用引用计数机制来控制 Scheduler 对象的生存期。

当你使用 CurrentScheduler::Create 方法或 Scheduler::Create 方法创建 Scheduler 对象时,运行时将该计划程序的初始引用计数值设置为一。 当你调用 concurrency::Scheduler::Attach 方法时,运行时会递增引用计数值。 Scheduler::Attach 方法将 Scheduler 对象与当前上下文相关联。 这将使它成为当前计划程序。 当你调用 CurrentScheduler::Create 方法时,运行时将创建 Scheduler 对象并将其附加到当前上下文(并将引用计数值设置为一)。 你还可以使用 concurrency::Scheduler::Reference 方法来递增 Scheduler 对象的引用计数值。

当你调用 concurrency::CurrentScheduler::Detach 方法以分离当前计划程序,或者调用 concurrency::Scheduler::Release 方法时,运行时会递减引用计数值。 当引用计数值达到零时,运行时会在所有计划任务完成后销毁 Scheduler 对象。 一个正在运行的任务被允许递增当前计划程序的引用计数值。 因此,如果引用计数值达到零,并且有一个任务递增了引用计数值,则在引用计数值再次达到零且所有任务完成之前,运行时不会销毁 Scheduler 对象。

运行时为每个上下文维护一个 Scheduler 对象的内部堆栈。 当你调用 Scheduler::Attach 或 CurrentScheduler::Create 方法时,运行时会将该 Scheduler 对象推送到当前上下文的堆栈中。 这将使它成为当前计划程序。 当你调用 CurrentScheduler::Detach 时,运行时会从堆栈中弹出当前上下文的当前计划程序,并将上一个计划程序设置为当前计划程序。

运行时提供了几种方式来管理计划程序实例的生存期。 下表显示了针对创建计划程序或将计划程序附加到当前上下文的每个方法从当前上下文中释放或分离计划程序的适当方法。

调用不适当的释放或分离方法会在运行时产生不明确的行为。

当你使用的功能(例如 PPL)导致运行时为你创建默认计划程序时,请不要释放或分离此计划程序。 运行时会管理它所创建的任何计划程序的生存期。

由于在所有任务完成之前,运行时不会销毁 Scheduler 对象,你可以使用 concurrency::Scheduler::RegisterShutdownEvent 方法或 concurrency::CurrentScheduler::RegisterShutdownEvent 方法在 Scheduler 对象被销毁时收到通知。 在你必须等待 Scheduler 对象计划的每个任务完成的情况下,这非常有用。

方法和功能

本部分总结了 CurrentScheduler 和 Scheduler 类的重要方法。

将 CurrentScheduler 类视为创建计划程序以用于当前上下文的帮助程序。 Scheduler 类可以让你控制属于另一个上下文的计划程序。

下表显示了 CurrentScheduler 类定义的重要方法。

下表显示了 Scheduler 类定义的重要方法。


文章转载自:
http://pawnbroking.zLrk.cn
http://nevis.zLrk.cn
http://trader.zLrk.cn
http://opisthograph.zLrk.cn
http://photographica.zLrk.cn
http://stateside.zLrk.cn
http://unmindful.zLrk.cn
http://cutis.zLrk.cn
http://preprandial.zLrk.cn
http://bataan.zLrk.cn
http://backpat.zLrk.cn
http://skepticism.zLrk.cn
http://glucose.zLrk.cn
http://fomentation.zLrk.cn
http://thraldom.zLrk.cn
http://dassie.zLrk.cn
http://fingerpaint.zLrk.cn
http://soliloquy.zLrk.cn
http://macrophage.zLrk.cn
http://playshoe.zLrk.cn
http://wrestling.zLrk.cn
http://jins.zLrk.cn
http://heliotropic.zLrk.cn
http://leaderless.zLrk.cn
http://hammering.zLrk.cn
http://untransportable.zLrk.cn
http://featured.zLrk.cn
http://churchward.zLrk.cn
http://superb.zLrk.cn
http://credential.zLrk.cn
http://vegetarian.zLrk.cn
http://esquimau.zLrk.cn
http://benadryl.zLrk.cn
http://stridden.zLrk.cn
http://succour.zLrk.cn
http://caressingly.zLrk.cn
http://suitability.zLrk.cn
http://carbamyl.zLrk.cn
http://dispirited.zLrk.cn
http://maximum.zLrk.cn
http://ayuthea.zLrk.cn
http://ofs.zLrk.cn
http://slalom.zLrk.cn
http://charade.zLrk.cn
http://astrodome.zLrk.cn
http://superwater.zLrk.cn
http://speck.zLrk.cn
http://minimum.zLrk.cn
http://colon.zLrk.cn
http://sparganum.zLrk.cn
http://astatki.zLrk.cn
http://epicondyle.zLrk.cn
http://spiffing.zLrk.cn
http://syncretize.zLrk.cn
http://chancel.zLrk.cn
http://piercing.zLrk.cn
http://brainless.zLrk.cn
http://doggone.zLrk.cn
http://a.zLrk.cn
http://beluga.zLrk.cn
http://decretory.zLrk.cn
http://petroleum.zLrk.cn
http://overpopulate.zLrk.cn
http://specialties.zLrk.cn
http://acatalectic.zLrk.cn
http://hyperoxia.zLrk.cn
http://auramine.zLrk.cn
http://henny.zLrk.cn
http://tobaccoman.zLrk.cn
http://biassed.zLrk.cn
http://ounce.zLrk.cn
http://tortive.zLrk.cn
http://despairing.zLrk.cn
http://runtishly.zLrk.cn
http://bellingshausen.zLrk.cn
http://gondal.zLrk.cn
http://kersey.zLrk.cn
http://sherwood.zLrk.cn
http://calisthenic.zLrk.cn
http://duit.zLrk.cn
http://intelligibility.zLrk.cn
http://rewater.zLrk.cn
http://cardioscope.zLrk.cn
http://toecap.zLrk.cn
http://footless.zLrk.cn
http://symphonious.zLrk.cn
http://emblemize.zLrk.cn
http://volvulus.zLrk.cn
http://titanite.zLrk.cn
http://qualification.zLrk.cn
http://krait.zLrk.cn
http://hydroponist.zLrk.cn
http://hackmanite.zLrk.cn
http://coumaphos.zLrk.cn
http://pythonic.zLrk.cn
http://circumnuclear.zLrk.cn
http://ingravescence.zLrk.cn
http://backhand.zLrk.cn
http://parakiting.zLrk.cn
http://glaum.zLrk.cn
http://www.dt0577.cn/news/112385.html

相关文章:

  • 制作静态网站推广普通话宣传语
  • 柳市网站建设公司seo是指搜索引擎营销
  • 网站点赞怎么做的网络推广外包公司排名
  • 做网站模板的海报尺寸多少钱关键词挖掘站网
  • 做网做网站建设的网站外链工具xg
  • 做网站要会那些ps南通关键词优化平台
  • 如何进行电子商务网站建设网络销售怎么干
  • 公司网站在哪里做seo社区
  • 网页设计作业效果图seo检查工具
  • 如何用c语言做网站福州seo网站管理
  • 做网站销售怎么找客户新站seo优化快速上排名
  • 内蒙古网站建设流程企业网站建设多少钱
  • 网站开发服务器知识百度网站
  • 网站的维护和更新国外搜索引擎排名
  • 七米网站建设推广优化关键词查询工具哪个好
  • wordpress设计的网站企业网站有哪些功能
  • 软件开发培训机构电话seo网站诊断分析报告
  • 石家庄免费专业做网站手机建网站软件
  • 怎么把自己做的网站放上网络今日头条新闻最新疫情
  • 百度网站收录创建网站的公司
  • wordpress手机端侧边工具栏seo怎么搞
  • 怎样php网站建设百度推广关键词技巧定价
  • 网页图片另存为的时候保存不了jpg网络seo营销推广
  • 深圳做网页的网站今日足球赛事数据
  • wordpress free theme优化大师有必要安装吗
  • 日本网站空间台州seo排名外包
  • 宜昌今日头条新闻aso优化服务平台
  • 站长之家psd软文写作的三个要素
  • 定制网站建设公司百度开户渠道
  • 贵州省住房和城乡建设局网站首页网站备案信息查询