2.2 Pool di thread

eDirectory è multithreading per questioni relative alle prestazioni. Nel multithreading, quando il sistema è occupato, vengono creati ulteriori thread per gestire il carico e alcuni thread vengono interrotti per evitare sovraccarichi in eccesso. La creazione e la distruzione frequente di thread sono operazioni inefficienti e costose. Anziché generare nuovi thread e distruggerli per ogni task, un numero di thread viene avviato e posizionato in un pool. Il sistema alloca i thread del pool di thread a tanti task quanti ne sono richiesti. I task sono disposti in due tipi di code:

Non tutti i moduli utilizzano il pool di thread. Il numero effettivo di thread per il processo è superiore a quello presente nel pool di thread. Ad esempio, FLAIM gestisce separatamente i propri thread in background.

L'esecuzione del comando ndstrace - c threads restituisce le seguenti statistiche del pool di thread:

Un esempio di un campione di pool di thread:

Esistono determinati parametri del pool di thread:

Eseguire i comandi ndsconfig get e ndsconfig set per recuperare e impostare la dimensione del pool di thread.