executor - Verwaltung des Steuerprogramms (executor)

Definiert Einstellungen für das Standardsteuerprogramm des Liberty-Kernels. Beachten Sie, dass es nur ein einziges Standardsteuerprogramm gibt, das nur für die Liberty-Laufzeitumgebung bestimmt und für die Anwendungen nicht direkt zugänglich ist. Anwendungen, die Steuerprogramme konfigurieren und nutzen müssen, sollten stattdessen verwaltete Steuerprogramme verwenden.

NameTypeDefaultDescription
namestringDefault ExecutorDer Name des Standardsteuerprogramms des Liberty-Kernels.
maxThreadsint-1Die maximale Anzahl an Threads, die dem Executor (Steuerprogramm) zugeordnet werden können. Wenn der Wert größer als 0 ist, muss dieser Wert größer-gleich dem Wert von coreThreads sein. Wenn der Wert von maxThreads kleiner-gleich 0 ist, ist die maximale Threadanzahl nicht begrenzt. Die tatsächliche Anzahl der dem Steuerprogramm zugeordneten Threads wird dynamisch vom Liberty-Kernel bestimmt. Wenn die Threadanzahl nicht beschränkt wird, bedeutet dies nicht, dass die Laufzeitumgebung aktiv sehr viele Threads erstellt. In diesem Fall entscheidet einfach der Liberty-Kernel, wie viele Threads dem Steuerprogramm zugeordnet werden, ohne dass eine Obergrenze definiert wird.
coreThreadsint-1Die stabile oder Kernanzahl der Threads, die diesem Executor (Steuerprogramm) zugeordnet werden. Die Anzahl der dem Executor zugeordneten Threads steigt schnell auf diese Zahl an. Wenn dieser Wert kleiner als 0 ist, wird ein Standardwert verwendet. Dieser Standardwert wird basierend auf der Anzahl der Hardware-Threads im System berechnet.
keepAliveZeitraum mit Genauigkeit in Millisekunden60sGibt an, wie lange ein inaktiver Thread im Pool bleiben darf, bevor er beendet werden kann. 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.
stealPolicy
  • STRICT
  • NEVER
  • LOCAL
LOCALDie zu verwendende Richtlinie für Arbeitsübernahme. Die Optionen für diese Richtlinie bestimmen, wie Arbeiten in die Warteschlange eingereiht werden und wie Threads Arbeiten aus der Warteschlange abrufen.
STRICT
Alle Threads, die Arbeiten in einem lokalen Arbeitsstapel generieren. Threads, die dem Executor zugeordnet sind, übernehmen Arbeiten aus anderen Threads, wenn der lokale Arbeitsstapel abgearbeitet ist.
NEVER
Eine globale Arbeitswarteschlange wird verwendet, um Threads, die dem Executor zugeordnet sind, mit Arbeiten zu versorgen. Es findet keine Arbeitsübernahme statt.
LOCAL
für Arbeiten, die von Threads generiert werden, die dem Executor nicht zugeordnet sind, wird eine globale Arbeitswarteschlange verwendet. Arbeiten, die von Threads generiert werden, die dem Executor zugeordnet sind, werden in einem lokalen Arbeitsstapel abgelegt. Der Arbeitsstapel gehört dem generierenden Thread, sofern er nicht von einem anderen Thread übernommen wird. Threads, die dem Executor zugeordnet sind, übernehmen Arbeiten, die anderen Threads zugeordnet sind, wenn der lokale Arbeitsstapel leer ist und keine Arbeiten in der globalen Arbeitswarteschlange enthalten sind.
rejectedWorkPolicy
  • ABORT
  • CALLER_RUNS
ABORTDie Richtlinie, die eingesetzt wird, wenn der Executor nicht in der Lage ist, Arbeit für die Ausführung bereitzustellen.
ABORT
Ausnahme auslösen
CALLER_RUNS
Arbeiten sofort im Thread des Aufrufenden ausführen