managedScheduledExecutorService - Verwaltetes geplantes Steuerprogramm (managedScheduledExecutorService)

Verwalteter geplanter Steuerprogrammservice

NameTypeDefaultDescription
idstringEine eindeutige Konfigurations-ID.
concurrencyPolicyRefReferenz auf das concurrencyPolicy-Element (string) der höchsten Ebene.defaultConcurrencyPolicyDie Richtlinie für gemeinsamer Zugriff für Tasks, die an diesen Executor übergeben werden. Wenn mehrere Executor dieselbe Richtlinie für gemeinsamen Zugriff verwenden, werden die Vorgaben der Richtlinie für alle Tasks umgesetzt, die von diesen Executor übergeben werden.
contextServiceRefReferenz auf das contextService-Element (string) der höchsten Ebene.DefaultContextServiceKonfiguriert, wie der Kontext an Threads weitergegeben wird.
jndiNamestringJNDI-Name
longRunningPolicyRefReferenz auf das concurrencyPolicy-Element (string) der höchsten Ebene.Die Richtlinie für gemeinsamen Zugriff für Tasks, die die Ausführungseigenschaft LONGRUNNING_HINT mit dem Wert 'true' haben. Wenn mehrere Executor dieselbe Richtlinie für gemeinsamen Zugriff verwenden, werden die Vorgaben der Richtlinie für alle Tasks umgesetzt, die von diesen Executor übergeben werden. Wenn diese Option nicht angegeben wird, wird standardmäßig die allgemeine Richtlinie für gemeinsamen Zugriff des Executors als Richtlinie für gemeinsamen Zugriff für Tasks mit langer Laufzeit verwendet.

concurrencyPolicy

Die Richtlinie für gemeinsamer Zugriff für Tasks, die an diesen Executor übergeben werden. Wenn mehrere Executor dieselbe Richtlinie für gemeinsamen Zugriff verwenden, werden die Vorgaben der Richtlinie für alle Tasks umgesetzt, die von diesen Executor übergeben werden.

NameTypeDefaultDescription
maxPolicy
  • loose
  • strict
looseGibt an, ob die maximale Anzahl gleichzeitiger Zugriffe für Tasks, die im Thread des Tasksenders flexibel oder strikt umgesetzt werden soll. Tasks können im Thread des Tasksenders ausgeführt werden, wenn die nicht zeitlich festgelegte Methode invokeAll verwendet wird oder wenn nur eine einzige Task, die nicht zeitlich festgelegte Methode invokeAny aufgerufen wird. Wenn das Attribut Bei voller Warteschlange ausführen konfiguriert ist, können Tasks auch dann im Thread des Tasksenders ausgeführt werden, wenn die Methoden execute und submit verwendet werden. In allen genannten Fällen bestimmt dieses Attribut, ob die Ausführung im Thread des Senders in der maximalen Anzahl gleichzeitiger Zugriffe berücksichtigt wird oder nicht.
loose
Die maximale Anzahl gemeinsamer Zugriffe wird flexibel durchgesetzt. Tasks können im Thread des Tasksenders ausgeführt werden, ohne dass sie in der maximalen Anzahl gleichzeitiger Zugriffe berücksichtigt werden.
strict
Die maximale Anzahl gemeinsamer Zugriffe wird strikt durchgesetzt. Die im Thread des Tasksenders ausgeführten Tasks werden in der maximalen Anzahl gleichzeitiger Zugriffe berücksichtigt. Diese Richtlinie lässt die Ausführung von Tasks im Thread des Tasksenders nicht zu, wenn die maximale Anzahl gleichzeitiger Zugriffe bereits erreicht ist.
maxWaitForEnqueueZeitraum mit Genauigkeit in Millisekunden0Gibt die maximale Wartezeit für das Einreihen einer Task in die Warteschlange ein. Wenn die Task innerhalb dieses Zeitraums nicht in die Warteschlange eingereiht werden kann, richtet sich die Übergabe der Task nach der Richtlinie Bei voller Warteschlange ausführen. Wenn die maximale Wartezeit für das Einreihen in die Warteschlange aktualisiert wird, gilt die Aktualisierung nur für Tasks, die nach diesem Punkt übergeben werden. Für Taskübergaben, die bereits auf eine Position in der Warteschlange warten, gilt weiterhin der zuvor konfigurierte Wert. Geben Sie eine positive ganze Zahl, gefolgt von einer Zeiteinheit, an. Die gültigen Zeiteinheiten sind Stunden (h), Minuten (m), Sekunden (s) und Millisekunden (ms). Geben Sie 500 Millisekunden beispielsweise als 500ms an. Sie können mehrere Werte in einen einzigen Eintrag einschließen. 1s500ms entspricht beispielsweise 1,5 Sekunden.
runIfQueueFullbooleanfalseGilt für die Verwendung der Methoden <execute> und <submit>. Gibt an, ob die Task im Thread des Senders ausgeführt werden soll, wenn die Warteschlange voll ist und die maximale Wartezeit für das Einreihen in die Warteschlange überschritten wurde. Wenn die Richtlinie für maximale gemeinsame Zugriffe strikt konfiguriert ist, ist die Funktionalität zum Ausführen der Task im Thread des Senders zusätzlich abhängig von Beschränkung auf die maximale Anzahl gemeinsamer Zugriffe. Wenn die Task nicht im Thread des Senders ausgeführt werden kann, wird die Taskübergabe nach Ablauf der maximalen Wartezeit für das Einreihen in die Warteschlange zurückgewiesen.
maxint
Min: 1
Gibt die maximale Anzahl an Tasks an, die gleichzeitig ausgeführt werden können. Der Standardwert ist Integer.MAX_VALUE. Die maximale Anzahl gemeinsamer Zugriffe kann aktualisiert werden, während die Tasks in Bearbeitung sind. Wenn für die maximale Anzahl gemeinsamer Zugriffe ein Wert angegeben wird, der die Anzahl gleichzeitig ausgeführter Tasks unterschreitet, wird die Aktualisierung schrittweise wirksam, wenn die in Bearbeitung befindlichen Tasks abgeschlossen werden.
maxQueueSizeint
Min: 1
Gibt die maximale Anzahl an Tasks an, die zur Ausführung in die Warteschlange eingereiht werden können. Wenn Tasks gestartet oder abgebrochen werden, werden sie aus der Warteschlange entfernt. Wenn die Warteschlangenkapazität erschöpft ist und eine weitere Task übergeben wird, richtet sich das Verhalten nach den Einstellungen für die Attribute Maximale Wartezeit für Einreihen in die Warteschlange und Bei voller Warteschlange ausführen. Um sicherzustellen, dass eine bestimmte Anzahl von Tasks innerhalb kurzer Zeit in die Warteschlange eingereiht werden können, verwenden Sie einen Wert für die maximale Warteschlangengröße, der mindestens so hoch ist wie die gewünschte Anzahl. Der Standardwert für die maximale Warteschlangengröße ist Integer.MAX_VALUE. Die maximale Warteschlangengröße kann aktualisiert werden, während Tasks in Bearbeitung sind oder zur Ausführung in die Warteschlange eingereiht sind. Wenn die maximale Warteschlangengröße unter die aktuelle Anzahl der Tasks in der Warteschlange reduziert wird, tritt die Aktualisierung schrittweise in Kraft, anstatt die überschüssigen Tasks in der Warteschlange automatisch abzubrechen.
startTimeoutZeitraum mit Genauigkeit in MillisekundenGibt den maximalen Zeitraum zwischen Taskübergabe und Taskstart an. Standardmäßig gibt es kein Zeitlimit für die Ausführung von Tasks. Wenn die Option Maximale Wartezeit für Einreihen in die Warteschlange und die Option Startzeitlimit beide aktiviert sind, konfigurieren Sie ein Startzeitlimit, das höher ist als die maximale Wartezeit für das Einreihen in die Warteschlange. Wenn das Startzeitlimit während der Verwendung aktualisiert wird, gilt der neue Wert für das Startzeitlimit für Tasks, die nach der Aktualisierung übergeben werden. Geben Sie eine positive ganze Zahl, gefolgt von einer Zeiteinheit, an. Die gültigen Zeiteinheiten sind Stunden (h), Minuten (m), Sekunden (s) und Millisekunden (ms). Geben Sie 500 Millisekunden beispielsweise als 500ms an. Sie können mehrere Werte in einen einzigen Eintrag einschließen. 1s500ms entspricht beispielsweise 1,5 Sekunden.

contextService

Konfiguriert, wie der Kontext an Threads weitergegeben wird.

NameTypeDefaultDescription
onError
  • IGNORE
  • WARN
  • FAIL
WARNBestimmt die Aktion, die beim Feststellen von Konfigurationsfehlern ausgeführt werden soll. Wenn beispielsweise securityContext für diesen Kontextservice konfiguriert, aber das Sicherheitsfeature nicht aktiviert ist, bestimmt onError, ob die Aktion als gescheitert eingestuft oder eine Warnung ausgegeben wird oder ob die Teile der Konfiguration, die falsch sind, ignoriert werden sollen.
IGNORE
Der Server gibt keine Warnungen und Fehlernachrichten aus, wenn ein Konfigurationsfehler auftritt.
WARN
Der Server gibt Warnungen und Fehlernachrichten aus, wenn ein Konfigurationsfehler auftritt.
FAIL
Der Server gibt eine Warnung oder Fehlernachricht beim ersten Auftreten des Fehlers aus und stoppt den Server dann.
baseContextRefReferenz auf das contextService-Element (string) der höchsten Ebene.Gibt einen Basiskontextservice an, von dem Kontext übernommen werden soll, der noch nicht in diesem Kontextservice definiert ist.
jndiNamestringJNDI-Name

contextService > baseContext

Gibt einen Basiskontextservice an, von dem Kontext übernommen werden soll, der noch nicht in diesem Kontextservice definiert ist.

NameTypeDefaultDescription
idstringEine eindeutige Konfigurations-ID.
onError
  • IGNORE
  • WARN
  • FAIL
WARNBestimmt die Aktion, die beim Feststellen von Konfigurationsfehlern ausgeführt werden soll. Wenn beispielsweise securityContext für diesen Kontextservice konfiguriert, aber das Sicherheitsfeature nicht aktiviert ist, bestimmt onError, ob die Aktion als gescheitert eingestuft oder eine Warnung ausgegeben wird oder ob die Teile der Konfiguration, die falsch sind, ignoriert werden sollen.
IGNORE
Der Server gibt keine Warnungen und Fehlernachrichten aus, wenn ein Konfigurationsfehler auftritt.
WARN
Der Server gibt Warnungen und Fehlernachrichten aus, wenn ein Konfigurationsfehler auftritt.
FAIL
Der Server gibt eine Warnung oder Fehlernachricht beim ersten Auftreten des Fehlers aus und stoppt den Server dann.
baseContextRefReferenz auf das contextService-Element (string) der höchsten Ebene.Gibt einen Basiskontextservice an, von dem Kontext übernommen werden soll, der noch nicht in diesem Kontextservice definiert ist.
jndiNamestringJNDI-Name

contextService > baseContext > baseContext

Gibt einen Basiskontextservice an, von dem Kontext übernommen werden soll, der noch nicht in diesem Kontextservice definiert ist.

contextService > baseContext > classloaderContext

Eine eindeutige Konfigurations-ID.

NameTypeDefaultDescription
idstringEine eindeutige Konfigurations-ID.

contextService > baseContext > jeeMetadataContext

Eine eindeutige Konfigurations-ID.

NameTypeDefaultDescription
idstringEine eindeutige Konfigurations-ID.

contextService > baseContext > securityContext

Eine eindeutige Konfigurations-ID.

NameTypeDefaultDescription
idstringEine eindeutige Konfigurations-ID.

contextService > baseContext > syncToOSThreadContext

Eine eindeutige Konfigurations-ID.

NameTypeDefaultDescription
idstringEine eindeutige Konfigurations-ID.

contextService > baseContext > zosWLMContext

Eine eindeutige Konfigurations-ID.

NameTypeDefaultDescription
idstringEine eindeutige Konfigurations-ID.
defaultTransactionClassstringASYNCBNDer Name der Transaktionsklasse, die WLM für die Klassifikation von Arbeiten bereitgestellt wird, wenn ein neuer WLM-Kontext für Arbeiten erstellt wird, die keine Dämonarbeiten sind.
daemonTransactionClassstringASYNCDMNDer Name der Transaktionsklasse, die WLM für die Klassifikation von Arbeiten bereitgestellt wird, wenn ein neuer WLM-Kontext für Dämonarbeiten erstellt wird.
wlm
  • PropagateOrNew
  • New
  • Propagate
PropagateGibt an, wie der WLM-Kontext für Arbeiten verarbeitet wird, die keine Dämonarbeiten sind.
PropagateOrNew
Verwenden Sie denselben WLM-Kontext, oder erstellen Sie einen neuen Kontext, wenn kein aktueller Kontext vorhanden ist.
New
Erstellt immer einen neuen WLM-Kontext.
Propagate
Denselben WLM-Kontext verwenden (sofern vorhanden)

contextService > classloaderContext

Eine eindeutige Konfigurations-ID.

NameTypeDefaultDescription
idstringEine eindeutige Konfigurations-ID.

contextService > jeeMetadataContext

Eine eindeutige Konfigurations-ID.

NameTypeDefaultDescription
idstringEine eindeutige Konfigurations-ID.

contextService > securityContext

Eine eindeutige Konfigurations-ID.

NameTypeDefaultDescription
idstringEine eindeutige Konfigurations-ID.

contextService > syncToOSThreadContext

Eine eindeutige Konfigurations-ID.

NameTypeDefaultDescription
idstringEine eindeutige Konfigurations-ID.

contextService > zosWLMContext

Eine eindeutige Konfigurations-ID.

NameTypeDefaultDescription
idstringEine eindeutige Konfigurations-ID.
defaultTransactionClassstringASYNCBNDer Name der Transaktionsklasse, die WLM für die Klassifikation von Arbeiten bereitgestellt wird, wenn ein neuer WLM-Kontext für Arbeiten erstellt wird, die keine Dämonarbeiten sind.
daemonTransactionClassstringASYNCDMNDer Name der Transaktionsklasse, die WLM für die Klassifikation von Arbeiten bereitgestellt wird, wenn ein neuer WLM-Kontext für Dämonarbeiten erstellt wird.
wlm
  • PropagateOrNew
  • New
  • Propagate
PropagateGibt an, wie der WLM-Kontext für Arbeiten verarbeitet wird, die keine Dämonarbeiten sind.
PropagateOrNew
Verwenden Sie denselben WLM-Kontext, oder erstellen Sie einen neuen Kontext, wenn kein aktueller Kontext vorhanden ist.
New
Erstellt immer einen neuen WLM-Kontext.
Propagate
Denselben WLM-Kontext verwenden (sofern vorhanden)

longRunningPolicy

Die Richtlinie für gemeinsamen Zugriff für Tasks, die die Ausführungseigenschaft LONGRUNNING_HINT mit dem Wert 'true' haben. Wenn mehrere Executor dieselbe Richtlinie für gemeinsamen Zugriff verwenden, werden die Vorgaben der Richtlinie für alle Tasks umgesetzt, die von diesen Executor übergeben werden. Wenn diese Option nicht angegeben wird, wird standardmäßig die allgemeine Richtlinie für gemeinsamen Zugriff des Executors als Richtlinie für gemeinsamen Zugriff für Tasks mit langer Laufzeit verwendet.

NameTypeDefaultDescription
maxPolicy
  • loose
  • strict
looseGibt an, ob die maximale Anzahl gleichzeitiger Zugriffe für Tasks, die im Thread des Tasksenders flexibel oder strikt umgesetzt werden soll. Tasks können im Thread des Tasksenders ausgeführt werden, wenn die nicht zeitlich festgelegte Methode invokeAll verwendet wird oder wenn nur eine einzige Task, die nicht zeitlich festgelegte Methode invokeAny aufgerufen wird. Wenn das Attribut Bei voller Warteschlange ausführen konfiguriert ist, können Tasks auch dann im Thread des Tasksenders ausgeführt werden, wenn die Methoden execute und submit verwendet werden. In allen genannten Fällen bestimmt dieses Attribut, ob die Ausführung im Thread des Senders in der maximalen Anzahl gleichzeitiger Zugriffe berücksichtigt wird oder nicht.
loose
Die maximale Anzahl gemeinsamer Zugriffe wird flexibel durchgesetzt. Tasks können im Thread des Tasksenders ausgeführt werden, ohne dass sie in der maximalen Anzahl gleichzeitiger Zugriffe berücksichtigt werden.
strict
Die maximale Anzahl gemeinsamer Zugriffe wird strikt durchgesetzt. Die im Thread des Tasksenders ausgeführten Tasks werden in der maximalen Anzahl gleichzeitiger Zugriffe berücksichtigt. Diese Richtlinie lässt die Ausführung von Tasks im Thread des Tasksenders nicht zu, wenn die maximale Anzahl gleichzeitiger Zugriffe bereits erreicht ist.
maxWaitForEnqueueZeitraum mit Genauigkeit in Millisekunden0Gibt die maximale Wartezeit für das Einreihen einer Task in die Warteschlange ein. Wenn die Task innerhalb dieses Zeitraums nicht in die Warteschlange eingereiht werden kann, richtet sich die Übergabe der Task nach der Richtlinie Bei voller Warteschlange ausführen. Wenn die maximale Wartezeit für das Einreihen in die Warteschlange aktualisiert wird, gilt die Aktualisierung nur für Tasks, die nach diesem Punkt übergeben werden. Für Taskübergaben, die bereits auf eine Position in der Warteschlange warten, gilt weiterhin der zuvor konfigurierte Wert. Geben Sie eine positive ganze Zahl, gefolgt von einer Zeiteinheit, an. Die gültigen Zeiteinheiten sind Stunden (h), Minuten (m), Sekunden (s) und Millisekunden (ms). Geben Sie 500 Millisekunden beispielsweise als 500ms an. Sie können mehrere Werte in einen einzigen Eintrag einschließen. 1s500ms entspricht beispielsweise 1,5 Sekunden.
runIfQueueFullbooleanfalseGilt für die Verwendung der Methoden <execute> und <submit>. Gibt an, ob die Task im Thread des Senders ausgeführt werden soll, wenn die Warteschlange voll ist und die maximale Wartezeit für das Einreihen in die Warteschlange überschritten wurde. Wenn die Richtlinie für maximale gemeinsame Zugriffe strikt konfiguriert ist, ist die Funktionalität zum Ausführen der Task im Thread des Senders zusätzlich abhängig von Beschränkung auf die maximale Anzahl gemeinsamer Zugriffe. Wenn die Task nicht im Thread des Senders ausgeführt werden kann, wird die Taskübergabe nach Ablauf der maximalen Wartezeit für das Einreihen in die Warteschlange zurückgewiesen.
maxint
Min: 1
Gibt die maximale Anzahl an Tasks an, die gleichzeitig ausgeführt werden können. Der Standardwert ist Integer.MAX_VALUE. Die maximale Anzahl gemeinsamer Zugriffe kann aktualisiert werden, während die Tasks in Bearbeitung sind. Wenn für die maximale Anzahl gemeinsamer Zugriffe ein Wert angegeben wird, der die Anzahl gleichzeitig ausgeführter Tasks unterschreitet, wird die Aktualisierung schrittweise wirksam, wenn die in Bearbeitung befindlichen Tasks abgeschlossen werden.
maxQueueSizeint
Min: 1
Gibt die maximale Anzahl an Tasks an, die zur Ausführung in die Warteschlange eingereiht werden können. Wenn Tasks gestartet oder abgebrochen werden, werden sie aus der Warteschlange entfernt. Wenn die Warteschlangenkapazität erschöpft ist und eine weitere Task übergeben wird, richtet sich das Verhalten nach den Einstellungen für die Attribute Maximale Wartezeit für Einreihen in die Warteschlange und Bei voller Warteschlange ausführen. Um sicherzustellen, dass eine bestimmte Anzahl von Tasks innerhalb kurzer Zeit in die Warteschlange eingereiht werden können, verwenden Sie einen Wert für die maximale Warteschlangengröße, der mindestens so hoch ist wie die gewünschte Anzahl. Der Standardwert für die maximale Warteschlangengröße ist Integer.MAX_VALUE. Die maximale Warteschlangengröße kann aktualisiert werden, während Tasks in Bearbeitung sind oder zur Ausführung in die Warteschlange eingereiht sind. Wenn die maximale Warteschlangengröße unter die aktuelle Anzahl der Tasks in der Warteschlange reduziert wird, tritt die Aktualisierung schrittweise in Kraft, anstatt die überschüssigen Tasks in der Warteschlange automatisch abzubrechen.
startTimeoutZeitraum mit Genauigkeit in MillisekundenGibt den maximalen Zeitraum zwischen Taskübergabe und Taskstart an. Standardmäßig gibt es kein Zeitlimit für die Ausführung von Tasks. Wenn die Option Maximale Wartezeit für Einreihen in die Warteschlange und die Option Startzeitlimit beide aktiviert sind, konfigurieren Sie ein Startzeitlimit, das höher ist als die maximale Wartezeit für das Einreihen in die Warteschlange. Wenn das Startzeitlimit während der Verwendung aktualisiert wird, gilt der neue Wert für das Startzeitlimit für Tasks, die nach der Aktualisierung übergeben werden. Geben Sie eine positive ganze Zahl, gefolgt von einer Zeiteinheit, an. Die gültigen Zeiteinheiten sind Stunden (h), Minuten (m), Sekunden (s) und Millisekunden (ms). Geben Sie 500 Millisekunden beispielsweise als 500ms an. Sie können mehrere Werte in einen einzigen Eintrag einschließen. 1s500ms entspricht beispielsweise 1,5 Sekunden.