2.2 Pool de thread

O eDirectory possui múltiplas threads por questões de desempenho. Em multi-threading, quando o sistema está ocupado, mais threads são criadas para lidar com a carga e algumas são encerradas para evitar overhead extra. Criar e destruir threads frequentemente é custoso e ineficaz. Em vez de criar novas threads e destruí-las para cada tarefa, certas threads são iniciadas e colocadas em um pool. O sistema aloca as threads do pool de threads para diversas tarefas conforme necessário. As tarefas são separadas em dois tipos de filas:

Nem todos os módulos usam pool de threads. O número real de threads do processo é maior do que o número existente no pool de threads. Por exemplo, FLAIM gerencia suas threads em segundo plano separadamente.

Executar o comando ndstrace -c threads exibe as seguintes estatísticas do pool de thread:

Um exemplo de uma amostra do pool de thread:

Existem certos parâmetros do pool de thread:

Execute os comandos ndsconfig get e ndsconfig set para obter e definir o tamanho do pool de thread.