启动与系统组件

运行计划任务时出错0x80041323 - Windows Client

· 52CE 我爱测

本文提供了一种解决方案,用于修复运行大量计划任务时发生的错误0x80041323。 适用于: Windows 7 Service Pack 1、Windows Server 2012 R2原始 KB 数: 2696472 现象 请考虑以下方案: - 你有一台 Windows 计算机,该计算机在一个用户帐户下运行大量计划任务。 - 任务间歇性失败,在 LastRun 选项下,你可能会看到以下错误消息 任务计划程序服务太忙0x80041323 - 在任务计划程

本文提供了一种解决方案,用于修复运行大量计划任务时发生的错误0x80041323。

适用于: Windows 7 Service Pack 1、Windows Server 2012 R2原始 KB 数: 2696472

现象

请考虑以下方案:

  • 你有一台 Windows 计算机,该计算机在一个用户帐户下运行大量计划任务。
  • 任务间歇性失败,在 LastRun 选项下,你可能会看到以下错误消息

任务计划程序服务太忙0x80041323

  • 在任务计划程序操作日志下,可能会看到以下事件日志:

日志名称:Microsoft-Windows-TaskScheduler/Operational 来源:Microsoft-Windows-TaskScheduler 事件 ID:706 任务类别:兼容性模块任务状态更新失败 说明:任务兼容性模块未能将任务“<task.job>”更新为所需的状态 0。 其他数据:错误值:2147942405。 此错误进一步意味着:

for decimal -2147216605/ hex 0x80041323 SCHED_E_SERVICE_TOO_BUSY

任务计划程序服务太忙,无法处理

  • 此外,如果任务队列配额或引擎配额超出,你可能还会注意到以下事件记录在任务计划程序操作日志中:
  • 如果任务队列配额超出:

事件 ID 131 说明:任务计划程序无法启动任务“<Task_Name>”;因为任务队列中的任务数超过当前配置为 <Task_Queue_Limit的>配额。 用户操作:减少正在运行的任务数或增加配置的队列配额。 事件 ID 132 说明:任务计划程序任务启动队列配额即将接近其当前配置为 <Task_Limit>的任务的预设限制。 用户操作:减少正在运行的任务数或增加配置的队列配额。

  • 如果引擎配额超过:

事件 ID 133 说明:任务计划程序无法在 TaskEngine Engine_Name 中为用户<User_Name>启动任务<Task_Name>。> < 用户操作:减少在指定用户上下文中运行的数量任务。 事件 ID 134 说明:用户<>User_Name的任务引擎<Engine_Name>接近其预设的任务限制。 用户操作:减少正在运行的任务数或增加配置的队列配额。

注意

事件 ID 132 和事件 ID 134 只是即将出现的问题的指示器,而不是问题本身。 此问题可能会在这些事件之后发生或可能不会发生。

原因

根据代码 SCHED_E_SERVICE_TOO_BUSY,队列已满时会记录此代码。 如果出现以下情况,则会发生上述问题:

  1. 超过任务队列配额。
  2. 超过引擎配额。

解决方法

若要解决此问题,请将配额密钥的值增加到最大值。

注意

本节包含说明如何修改注册表的步骤。 但是,如果注册表修改不正确,可能会发生严重问题。 因此,按以下步骤操作时请务必谨慎。 作为额外保护措施,请在修改注册表之前先将其备份。 如果之后出现问题,您就可以还原注册表。

  1. 单击“开始”,键入 regedit,然后按 Enter。
  2. 找到并单击以下注册表项: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Schedule\Configuration
  3. 右键单击 TasksInMemoryQueue,单击“编辑**”**,然后单击“修改”。
  4. 在 “值”数据 框中,键入 1000 (十进制)。
  5. 右键单击 TasksPerHighestPrivEngine,单击“编辑**”**,然后单击“修改”。
  6. 在 “值”数据 框中,键入 1000 (十进制)。
  7. 右键单击 TasksPerLeastPrivEngine,单击“编辑**”**,然后单击“修改”。
  8. 在 “值”数据 框中,键入 1000 (十进制)。
  9. 退出 注册表编辑器 并重新启动计算机。

详细信息

作业队列配额通过“TasksInMemoryQueue”值控制,而引擎配额通过位于以下注册表项下的“TasksPerHighestPrivEngine”和“TasksPerLeastPrivEngine”注册表值进行控制:

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Schedule\Configuration

  • TasksInMemoryQueue [Default = 75, Max = 1000]
    • 确定允许在会话管理器中排队的最大任务。 超过此限制后,计划执行的任何新任务实例将被丢弃,你将获得事件 ID 131。
    • 此队列由所有任务共享。
  • TasksPerHighestPrivEngine [Default = 100, Max = 1000]
    • 确定允许在任何给定时间点处于“提升”任务引擎(taskeng.exe)运行状态的任务实例的最大数目。
    • 每个用户会话存在一个任务引擎(例如 SYSTEM、LOCAL SERVICE、Administrator、USER1、USER2 等)
    • 此处的“提升”对应于选择了“以最高特权运行”选项的任务。
  • TasksPerLeastPrivEngine [Default = 50, Max = 1000]
    • 类似于“TasksPerHighestPrivEngine”,只不过它对应于未提升的任务。

参考

事件 ID 131 - 任务计划程序服务配额事件 ID 132 - 任务计划程序服务配额

资料来源与适用范围

资料来源
微软官方中文故障文档
适用范围
适用于: Windows 7 Service Pack 1、Windows Server 2012 R2原始 KB 数: 2696472
内容语言
中文;命令、路径和错误标识保留技术原文
本地收录日期
2026-10-26
授权说明
CC BY 4.0

正文与所需资源由本站本地存储。查看来源及更新记录 ↗

请按适用版本和实际日志确认原因;本站没有对每一种系统或设备逐项执行文中的操作。