executor - Gerenciamento de Executor (executor)

Estabelece as configurações do executor do kernel padrão do Liberty. Observe que há sempre um e exatamente um executor padrão, para uso pelo tempo de execução do Liberty apenas e não é acessível diretamente pelos aplicativos. Os aplicativos que precisam configurar e usar executores devem usar, em vez disso, executores gerenciados.

NameTypeDefaultDescription
namestringDefault ExecutorO nome do executor do kernel padrão do Liberty.
maxThreadsint-1Número máximo de encadeamentos que podem ser associados ao executor. Se for maior que 0, esse valor deve ser maior que ou igual ao valor de coreThreads. Se o valor de maxThreads for menor que ou igual a 0, o número máximo de encadeamentos será desvinculado. Observe que o número real de encadeamentos associados ao executor é determinado dinamicamente pelo kernel do Liberty, portanto, deixar o máximo de encadeamentos sem limites não significa que o tempo de execução irá criar grandes quantidades de encadeamentos ativamente; ele simplesmente permite que o kernel do Liberty decida quantos encadeamentos devem ser associados ao executor sem um limite superior definido.
coreThreadsint-1Estado estável ou número principal de encadeamentos para associar ao executor. O número de encadeamentos associados ao executor crescerá rapidamente para esse número. Se este valor for inferior a 0, o valor padrão será usado. O valor padrão é calculado com base no número de encadeamentos de hardware no sistema.
keepAliveUm período de tempo com precisão de milissegundo60sQuantidade de tempo para manter um encadeamento inativo no conjunto antes de permitir que ele finalize. Especifique um número inteiro positivo seguido por uma unidade de tempo, que pode ser horas (h), minutos (m), segundos (s) ou milissegundos (ms). Por exemplo, especifique 500 milissegundos como 500 ms. É possível incluir diversos valores em uma única entrada. Por exemplo, 1s500ms é equivalente a 1,5 segundos.
stealPolicy
  • STRICT
  • NEVER
  • LOCAL
LOCALA política de work-stealing a ser utilizada. As opções para esta política determinam como o trabalho é enfileirado e como os encadeamentos obtém trabalho enfileirado.
STRICT
Todos os encadeamento que geram o trabalho possuem um pile de trabalho local. Os encadeamentos que estão associados ao executor executam o trabalho de outros encadeamentos quando o pile de trabalho local é esgotado.
NEVER
Uma fila de trabalhos global é usada para alimentar o trabalho para encadeamentos que estão associados ao executor. Não ocorrerá nenhuma deturpação.
LOCAL
Uma fila de trabalhos globais é usada para o trabalho que é gerado pelos encadeamentos que não são associados ao executor. O trabalho gerado pelos encadeamentos associados ao executor é colocado em um pile de trabalho local. Este pile de trabalho é de propriedade do encadeamento de geração, a menos que outro encadeamento o deturpe. Os encadeamentos que estão associados ao executor executam o trabalho associado a outros encadeamentos se o pile de trabalho local estiver vazio e não houver trabalho na fila de trabalho global.
rejectedWorkPolicy
  • ABORT
  • CALLER_RUNS
ABORTA política a ser utilizada quando o executor não consegue definir o estágio do trabalho para execução.
ABORT
Aumente uma exceção.
CALLER_RUNS
Execute o trabalho imediatamente no encadeamento do responsável pela chamada.