Freigeben über


Fehler 0x80041323 beim Ausführen einer hohen Anzahl geplanter Vorgänge

Dieser Artikel enthält eine Lösung zum Beheben des Fehlers 0x80041323, der auftritt, wenn Sie eine hohe Anzahl geplanter Aufgaben ausführen.

Gilt für: Windows 7 Service Pack 1, Windows Server 2012 R2
Ursprüngliche KB-Nummer: 2696472

Problembeschreibung

Betrachten Sie das Szenario:

  • Sie verfügen über einen Windows-Computer, auf dem eine hohe Anzahl geplanter Aufgaben unter einem Benutzerkonto ausgeführt wird.

  • Die Aufgaben schlagen zeitweise fehl, und unter der Option "LastRun" wird möglicherweise die folgende Fehlermeldung angezeigt.

    Der Aufgabenplanerdienst ist zu ausgelastet 0x80041323

  • Unter dem Betriebsprotokoll "Vorgangsplaner" wird möglicherweise das folgende Ereignis protokolliert:

    Protokollname: Microsoft-Windows-TaskScheduler/Operational
    Quelle: Microsoft-Windows-TaskScheduler
    Ereignis-ID: 706
    Vorgangskategorie: Fehler beim Aktualisieren des Aufgabenstatus des Kompatibilitätsmoduls
    Beschreibung: Das Aufgabenkompatibilitätsmodul konnte die Aufgabe "<task.job>" nicht auf den erforderlichen Status 0 aktualisieren. Zusätzliche Daten: Fehlerwert: 2147942405.
    Der Fehler impliziert außerdem Folgendes:

    für dezimale -2147216605 / hexadezimale 0x80041323 SCHED_E_SERVICE_TOO_BUSY

    Der Aufgabenplanerdienst ist zu ausgelastet, um Ihre Aufgaben zu verarbeiten

  • Darüber hinaus können Sie feststellen, dass die folgenden Ereignisse, die im Betriebsprotokoll des Taskplanrs protokolliert werden, wenn das Kontingent für die Vorgangswarteschlange oder das Modulkontingent überschritten wurde:

  • Wenn das Kontingent der Vorgangswarteschlange überschritten wurde:

    Ereignis-ID 131
    Beschreibung: Der Taskplaner konnte den Vorgang "<Task_Name>" nicht starten. Da die Anzahl der Vorgänge in der Vorgangswarteschlange das aktuell für <Task_Queue_Limit> konfigurierte Kontingent überschreitet.
    Benutzeraktion: Verringern Sie die Anzahl der ausgeführten Aufgaben, oder erhöhen Sie das konfigurierte Warteschlangenkontingent.
    Ereignis-ID 132
    Beschreibung: Das Aufgabenplanungs-Aufgabenstart-Warteschlangenkontingent nähert sich dem voreingestellten Grenzwert von Vorgängen, die derzeit für <Task_Limit> konfiguriert sind.
    Benutzeraktion: Verringern Sie die Anzahl der ausgeführten Aufgaben, oder erhöhen Sie das konfigurierte Warteschlangenkontingent.

  • Wenn das Modulkontingent überschritten wurde:

    Ereignis-ID 133
    Beschreibung: Der Taskplaner konnte den Vorgang <> Task_Name in taskEngine <Engine_Name> für Benutzer-User_Name <>nicht starten.
    Benutzeraktion: Reduzieren Sie die Anzahl der Aufgaben, die im angegebenen Benutzerkontext ausgeführt werden.
    Ereignis-ID 134
    Beschreibung: Die aufgabenmodul-Engine_Name <> für benutzer <User_Name> nähert sich dem voreingestellten Grenzwert von Aufgaben.
    Benutzeraktion: Verringern Sie die Anzahl der ausgeführten Aufgaben, oder erhöhen Sie das konfigurierte Warteschlangenkontingent.

    Notiz

    Ereignis-ID 132 und Ereignis-ID 134 sind nur ein Indikator für das nähernde Problem und nicht das Problem selbst. Das Problem kann nach diesen Ereignissen auftreten oder nicht.

Ursache

Basierend auf Code SCHED_E_SERVICE_TOO_BUSYwird dies protokolliert, wenn die Warteschlange voll ist. Das oben genannte Problem tritt auf, wenn:

  1. Das Kontingent der Vorgangswarteschlange wird überschritten.
  2. Das Modulkontingent wird überschritten.

Lösung

Um dieses bestimmte Problem zu beheben, erhöhen Sie den Wert für die Kontingentschlüssel auf maximal.

Achtung

Dieser Abschnitt enthält Schritte, die Ihnen zeigen, wie Sie die Registrierung ändern. Wenn Sie die Registrierung falsch ändern, können jedoch schwerwiegende Probleme auftreten. Daher müssen Sie sicherstellen, dass Sie diese Schritte sorgfältig ausführen. Für weiteren Schutz sichern Sie die Registrierung, bevor Sie sie ändern. Anschließend können Sie die Registrierung wiederherstellen, wenn ein Problem auftritt.

  1. Klicken Sie auf "Start", geben Sie "regedit" ein, und drücken Sie dann die EINGABETASTE.
  2. Suchen Sie den folgenden Registrierungsschlüssel, und klicken Sie dann auf den folgenden Registrierungsschlüssel: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Schedule\Configuration
  3. Klicken Sie mit der rechten Maustaste auf "TasksInMemoryQueue", klicken Sie auf "Bearbeiten", und klicken Sie dann auf " Ändern".
  4. Geben Sie im Feld "Wert" 1000 (Dezimal) ein.
  5. Klicken Sie mit der rechten Maustaste auf "TasksPerHighestPrivEngine", klicken Sie auf "Bearbeiten", und klicken Sie dann auf "Ändern".
  6. Geben Sie im Feld "Wert" 1000 (Dezimal) ein.
  7. Klicken Sie mit der rechten Maustaste auf "TasksPerLeastPrivEngine", klicken Sie auf "Bearbeiten", und klicken Sie dann auf "Ändern".
  8. Geben Sie im Feld "Wert" 1000 (Dezimal) ein.
  9. Beenden Sie den Registrierungs-Editor , und starten Sie den Computer neu.

Weitere Informationen

Das Auftragswarteschlangenkontingent wird über den Wert "TasksInMemoryQueue" gesteuert, während das Modulkontingent über "TasksPerHighestPrivEngine" und "TasksPerLeastPrivEngine" Registrierungswerte unter dem folgenden Registrierungsschlüssel gesteuert wird:

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

  • TasksInMemoryQueue [Default = 75, Max = 1000]
    • Bestimmt die maximalen Aufgaben, die im Sitzungs-Manager in die Warteschlange gestellt werden dürfen. Sobald dieser Grenzwert überschritten wurde, wird jede neue auszuführende Vorgangsinstanz verworfen, und Sie erhalten die Ereignis-ID 131.
    • Diese Warteschlange wird von allen Aufgaben geteilt.
  • TasksPerHighestPrivEngine [Default = 100, Max = 1000]
    • Bestimmt die maximale Anzahl von Vorgangsinstanzen, die zu einem bestimmten Zeitpunkt im Zustand "RUNNING" für ein Taskmodul mit erhöhten Rechten (taskeng.exe) zulässig sind.
    • Ein Aufgabenmodul ist pro Benutzersitzung vorhanden (z. B. SYSTEM, LOKALER DIENST, Administrator, USER1, USER2 usw.)
    • Hier entspricht "erweitert" den Aufgaben, die die Option "Mit höchsten Berechtigungen ausführen" ausgewählt haben.
  • TasksPerLeastPrivEngine [Default = 50, Max = 1000]
    • Ähnlich wie "TasksPerHighestPrivEngine" mit der Ausnahme, dass sie nicht erhöhten Vorgängen entspricht.

Verweis

Ereignis-ID 131 – Aufgabenplanungsdienstkontingente
Ereignis-ID 132 – Aufgabenplanungsdienstkontingente