Partilhar via


CThreadPool::SetSize

telefonar Esse método para conjunto o número de segmentos no pool.

HRESULT STDMETHODCALLTYPE SetSize(
   int nNumThreads 
) throw( );

Parâmetros

  • nNumThreads
    O número de threads no pool solicitado.

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

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

Valor de retorno

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

Comentários

Se o número de segmentos especificado for menor do que o número de segmentos atualmente no pool, o objeto coloca uma mensagem de desligado em fila para ser capturada por um segmento em espera.Quando um segmento em espera obtém a mensagem fora da fila, ele notifica o pool de threads e termina o procedimento de thread.Esse processo é repetido até que o número de segmentos no pool de atingir o número especificado ou até que nenhum thread foi encerrado dentro do período especificado por GetTimeout/SetTimeout.Nessa situação, o método retornará um HRESULT correspondente ao WAIT_TIMEOUT e a mensagem de desligado pendente é cancelado.

Requisitos

Cabeçalho: atlutil.h

Consulte também

Referência

Classe CThreadPool

IThreadPoolConfig::SetSize

CThreadPool::GetSize

Outros recursos

CThreadPool membros