Informações sobre o novo método GetMinThreads e o novo método SetMinThreads da classe ThreadPool no .NET Framework 1.1

Traduções de Artigos Traduções de Artigos
Artigo: 827419 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

INTRODUÇÃO

O Microsoft .NET Framework 1.1 adiciona dois novos métodos que se seguem:
  • SetMinThreads
  • GetMinThreads
Estes dois novos métodos destinam-se a classe ThreadPool . O método SetMinThreads é utilizado para aumentar o número de threads de trabalho inactivos ou o número de threads de conclusão de E/s que mantém a classe ThreadPool . O método GetMinThreads é utilizado para obter as definições actuais.

Mais Informação

Por predefinição, o número mínimo de threads inactivos que são mantidas para a classe ThreadPool é:
  • Um thread para cada processador do computador
  • Um thread para cada trabalho de thread categoria
  • Um thread para cada categoria de E/s
A forma como são atribuídos threads pode causar um congestionamento se uma aplicação específica subitamente requer um grande número de threads. Para evitar este problema, utilize o método SetMinThreads para aumentar o número de threads de trabalho inactivos e o número de threads de conclusão de E/s que mantém a classe ThreadPool . Utilize o método GetMinThreads para obter as definições mínimas actuais.

Método SetMinThreads

  • O exemplo de código que se segue fornece a definição do SetMinThreads método.
     
    public static bool SetMinThreads(int workerThreads, int completionPortThreads)
    {
     return SetMinThreadsNative(workerThreads, completionPortThreads);
    }
  • Pode adicionar o método SetMinThreads para aumentar o número de trabalho inactivo threads e para aumentar o número de threads de conclusão de E/s que são mantidas pela classe ThreadPool .
  • O método SetMinThreads define o número total de threads inactivos, independentemente do número de processadores que o computador tem.
  • Se especificar um número negativo ou um número que é maior do que o número máximo de threads de classe ThreadPool activas, que podem ser obtidos o método GetMaxThreads da classe ThreadPool , o método de SetMinThreads devolve false e não altera a qualquer um dos valores mínimos.

Método GetMinThreads

  • O exemplo de código que se segue fornece a definição do método GetMinThreads .
    public static void GetMinThreads(out int workerThreads, out int completionPortThreads)
    {
     GetMinThreadsNative(out workerThreads, out completionPortThreads);
    }
  • Pode adicionar o método GetMinThreads à classe ThreadPool como parte do .NET 1.1 Framework para obter o número de threads de trabalho inactivos e o número de threads de conclusão de E/s que são mantidas pela classe ThreadPool .
  • O método GetMinThreads obtém o número total de threads inactivos independentemente do número de processadores que tem um computador.

Exemplos de código que utilizam o método SetMinThreads e o método GetMinThreads

Nos seguintes exemplos de código, o número mínimo de trabalho inactivo threads está definido para 4. O valor original para o número mínimo de threads de conclusão de E/s inactivos é preservado.

Microsoft Visual Basic .NET
Dim minWorker, minIOC As Integer
        ' Get the current settings.
        ThreadPool.GetMinThreads(minWorker, minIOC)
        ' Change the minimum number of Worker threads to 4 but keep
        ' the old setting for the minimum I/O completion threads.
        If ThreadPool.SetMinThreads(4, minIOC) Then
            ' The minimum number of threads is set successfully.
        Else
            ' The minimum number of threads is not changed.
        End If
Microsoft Visual C# .NET
int minWorker, minIOC;
        // Get the current settings.
        ThreadPool.GetMinThreads(out minWorker, out minIOC);
        // Change the minimum number of Worker threads to 4 but keep
        // the old setting for minimum I/O completion threads.
        if (ThreadPool.SetMinThreads(4, minIOC))
        {
            // The minimum number of threads is set successfully.
        }
        else
        {
            // The minimum number of threads is not changed.
        }

Referências

Para obter informações adicionais, clique números de artigo que se seguem para visualizar os artigos na base de dados de conhecimento da Microsoft:
810259CORRECÇÃO: SetMinThreads e API GetMinThreads à common language runtime ThreadPool classe
315460Como submeter um item de trabalho para o conjunto de threads utilizando o Visual C# .NET

Propriedades

Artigo: 827419 - Última revisão: 12 de novembro de 2004 - Revisão: 1.3
A informação contida neste artigo aplica-se a:
  • Microsoft Visual C# .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft .NET Framework 1.1
Palavras-chave: 
kbmt kbinfo kbhowto kbthread kbperformance kbcommandline KB827419 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 827419

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com