Process.WaitForInputIdle Método

Definição

Faz com que o Process componente espere que o processo associado entre num estado de inatividade.

Sobrecargas

Name Description
WaitForInputIdle()

Faz com que o Process componente espere indefinidamente que o processo associado entre num estado inativo. Esta sobrecarga aplica-se apenas a processos com uma interface de utilizador e, portanto, um ciclo de mensagens.

WaitForInputIdle(Int32)

Faz com que o Process componente espere o número especificado de milissegundos para que o processo associado entre num estado de inatividade. Esta sobrecarga aplica-se apenas a processos com uma interface de utilizador e, portanto, um ciclo de mensagens.

WaitForInputIdle()

Faz com que o Process componente espere indefinidamente que o processo associado entre num estado inativo. Esta sobrecarga aplica-se apenas a processos com uma interface de utilizador e, portanto, um ciclo de mensagens.

public:
 bool WaitForInputIdle();
public bool WaitForInputIdle();
member this.WaitForInputIdle : unit -> bool
Public Function WaitForInputIdle () As Boolean

Devoluções

true se o processo associado tiver atingido um estado inativo.

Exceções

O processo não tem uma interface gráfica.

-ou-

Ocorreu um erro desconhecido. O processo não entrou em estado de inatividade.

-ou-

O processo já terminou.

-ou-

Nenhum processo está associado a este Process objeto.

Observações

Use WaitForInputIdle() para forçar o processamento da sua aplicação a esperar até que o ciclo de mensagens volte ao estado de inatividade. Quando um processo com uma interface de utilizador está a ser executado, o seu ciclo de mensagens é executado sempre que uma mensagem do Windows é enviada ao processo pelo sistema operativo. O processo regressa então ao ciclo de mensagens. Diz-se que um processo está em estado inativo quando está à espera de mensagens dentro de um ciclo de mensagens. Este estado é útil, por exemplo, quando a sua aplicação precisa de esperar que um processo inicial termine de criar a sua janela principal antes de a aplicação comunicar com essa janela.

Se um processo não tiver um ciclo de mensagens, WaitForInputIdle() lança um InvalidOperationException.

A WaitForInputIdle() sobrecarga instrui o Process componente a esperar indefinidamente que o processo fique inativo no ciclo de mensagens. Esta instrução pode fazer com que uma aplicação deixe de responder. Por exemplo, se o processo for escrito para sair sempre imediatamente do seu ciclo de mensagens, como no fragmento while(true)de código .

Ver também

Aplica-se a

WaitForInputIdle(Int32)

Faz com que o Process componente espere o número especificado de milissegundos para que o processo associado entre num estado de inatividade. Esta sobrecarga aplica-se apenas a processos com uma interface de utilizador e, portanto, um ciclo de mensagens.

public:
 bool WaitForInputIdle(int milliseconds);
public bool WaitForInputIdle(int milliseconds);
member this.WaitForInputIdle : int -> bool
Public Function WaitForInputIdle (milliseconds As Integer) As Boolean

Parâmetros

milliseconds
Int32

Um valor de 1 elevado a Int32.MaxValue que especifica o tempo, em milissegundos, para esperar que o processo associado fique inativo. Um valor de 0 especifica um retorno imediato, e um valor de -1 indica uma espera infinita.

Devoluções

true se o processo associado atingiu um estado ocioso; caso contrário, false.

Exceções

O processo não tem uma interface gráfica.

-ou-

Ocorreu um erro desconhecido. O processo não entrou em estado de inatividade.

-ou-

O processo já terminou.

-ou-

Nenhum processo está associado a este Process objeto.

Observações

Use WaitForInputIdle(Int32) para forçar o processamento da sua aplicação a esperar até que o ciclo de mensagens volte ao estado de inatividade. Quando um processo com uma interface de utilizador está a ser executado, o seu ciclo de mensagens é executado sempre que uma mensagem do Windows é enviada ao processo pelo sistema operativo. O processo regressa então ao ciclo de mensagens. Diz-se que um processo está em estado inativo quando está à espera de mensagens dentro de um ciclo de mensagens. Este estado é útil, por exemplo, quando a sua aplicação precisa de esperar que um processo inicial termine de criar a sua janela principal antes de a aplicação comunicar com essa janela.

Se um processo não tiver um ciclo de mensagens, WaitForInputIdle(Int32) lança um InvalidOperationException.

A WaitForInputIdle(Int32) sobrecarga instrui o Process componente a esperar um tempo finito até que o processo fique inativo no ciclo de mensagens. Se o processo associado não tiver ficado ocioso no final do intervalo porque o ciclo ainda está a processar mensagens, false é devolvido ao procedimento de chamada.

Para obter mais informações sobre como manipular eventos, consulte Manipulando e gerando eventos.

Ver também

Aplica-se a