Process.WaitForInputIdle Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fa sì che il componente attenda che Process il processo associato immetta uno stato di inattività.
Overload
| Nome | Descrizione |
|---|---|
| WaitForInputIdle() |
Fa sì che il componente Process attenda a tempo indeterminato affinché il processo associato entri in uno stato di inattività. Questo overload si applica solo ai processi con un'interfaccia utente e quindi a un ciclo di messaggi. |
| WaitForInputIdle(Int32) |
Fa sì che il componente Process attenda il numero specificato di millisecondi affinché il processo associato immetta uno stato di inattività. Questo overload si applica solo ai processi con un'interfaccia utente e quindi a un ciclo di messaggi. |
WaitForInputIdle()
Fa sì che il componente Process attenda a tempo indeterminato affinché il processo associato entri in uno stato di inattività. Questo overload si applica solo ai processi con un'interfaccia utente e quindi a un ciclo di messaggi.
public:
bool WaitForInputIdle();
public bool WaitForInputIdle();
member this.WaitForInputIdle : unit -> bool
Public Function WaitForInputIdle () As Boolean
Valori restituiti
true se il processo associato ha raggiunto uno stato di inattività.
Eccezioni
Il processo non dispone di un'interfaccia grafica.
oppure
Si è verificato un errore sconosciuto. Il processo non è riuscito a immettere uno stato di inattività.
oppure
Il processo è già stato chiuso.
oppure
Nessun processo è associato a questo Process oggetto.
Commenti
Usare WaitForInputIdle() per forzare l'elaborazione dell'applicazione per attendere che il ciclo di messaggi non venga restituito allo stato di inattività. Quando un processo con un'interfaccia utente è in esecuzione, il ciclo di messaggi viene eseguito ogni volta che un messaggio Windows viene inviato al processo dal sistema operativo. Il processo torna quindi al ciclo di messaggi. Un processo viene detto essere in uno stato di inattività quando è in attesa di messaggi all'interno di un ciclo di messaggi. Questo stato è utile, ad esempio, quando l'applicazione deve attendere il completamento di un processo iniziale per completare la creazione della finestra principale prima che l'applicazione comunichi con tale finestra.
Se un processo non dispone di un ciclo di messaggi, WaitForInputIdle() genera un'eccezione InvalidOperationException.
L'overload WaitForInputIdle() indica al Process componente di attendere a tempo indeterminato che il processo diventi inattiva nel ciclo di messaggi. Questa istruzione può causare l'arresto di un'applicazione. Ad esempio, se il processo viene scritto per uscire sempre dal ciclo di messaggi immediatamente, come nel frammento while(true)di codice .
Vedi anche
Si applica a
WaitForInputIdle(Int32)
Fa sì che il componente Process attenda il numero specificato di millisecondi affinché il processo associato immetta uno stato di inattività. Questo overload si applica solo ai processi con un'interfaccia utente e quindi a un ciclo di messaggi.
public:
bool WaitForInputIdle(int milliseconds);
public bool WaitForInputIdle(int milliseconds);
member this.WaitForInputIdle : int -> bool
Public Function WaitForInputIdle (milliseconds As Integer) As Boolean
Parametri
- milliseconds
- Int32
Valore da 1 a Int32.MaxValue che specifica la quantità di tempo, espressa in millisecondi, per attendere che il processo associato diventi inattiva. Il valore 0 specifica un valore restituito immediato e un valore di -1 specifica un'attesa infinita.
Valori restituiti
true se il processo associato ha raggiunto uno stato di inattività; in caso contrario, false.
Eccezioni
Il processo non dispone di un'interfaccia grafica.
oppure
Si è verificato un errore sconosciuto. Il processo non è riuscito a immettere uno stato di inattività.
oppure
Il processo è già stato chiuso.
oppure
Nessun processo è associato a questo Process oggetto.
Commenti
Usare WaitForInputIdle(Int32) per forzare l'elaborazione dell'applicazione per attendere che il ciclo di messaggi non venga restituito allo stato di inattività. Quando un processo con un'interfaccia utente è in esecuzione, il ciclo di messaggi viene eseguito ogni volta che un messaggio Windows viene inviato al processo dal sistema operativo. Il processo torna quindi al ciclo di messaggi. Un processo viene detto essere in uno stato di inattività quando è in attesa di messaggi all'interno di un ciclo di messaggi. Questo stato è utile, ad esempio, quando l'applicazione deve attendere il completamento di un processo iniziale per completare la creazione della finestra principale prima che l'applicazione comunichi con tale finestra.
Se un processo non dispone di un ciclo di messaggi, WaitForInputIdle(Int32) genera un'eccezione InvalidOperationException.
L'overload WaitForInputIdle(Int32) indica al Process componente di attendere un intervallo di tempo finito per consentire al processo di diventare inattiva nel ciclo di messaggi. Se il processo associato non è diventato inattiva entro la fine dell'intervallo perché il ciclo sta ancora elaborando i messaggi, false viene restituito alla routine chiamante.
Per ulteriori informazioni sulla gestione degli eventi, consultare gestione e generazione di eventi.