Partilhar via


CThreadPool::SetSize

Chamar esse método para definir o número de segmentos no pool.

HRESULT STDMETHODCALLTYPE SetSize(
   int nNumThreads 
) throw( );

Parâmetros

  • nNumThreads
    O número solicitado para o pool de segmentos.

    Se nNumThreads for negativo, seu valor absoluto será multiplicado pelo número de processadores no computador para obter o número total de segmentos.

    Se nNumThreads é zero, ATLS_DEFAULT_THREADSPERPROC será multiplicado pelo número de processadores no computador para obter o número total de segmentos.

Valor de retorno

Retorna S_OK em êxito, ou um erro HRESULT em caso de falha.

Comentários

Se o número de segmentos especificados for menor que o número de segmentos no pool, o objeto coloca uma mensagem de desligamento na fila para ser pegarada por um segmento em espera.Quando um segmento em espera retira a mensagem a fila, notificar o pool de segmentos e sai do procedimento de segmento.Esse processo é repetido até que o número de segmentos no pool atinja o número especificado ou até que nenhum segmento sair de dentro do intervalo especificado por GetTimeout/SetTimeout.Em esta situação o método retornará um HRESULT que corresponde a WAIT_TIMEOUT e a mensagem pendente de desligamento é cancelada.

Requisitos

Cabeçalho: atlutil.h

Consulte também

Referência

Classe de CThreadPool

IThreadPoolConfig::SetSize

CThreadPool::GetSize