2015-06-17 17 views
6

Ho un numero di processi remoti avviati con un comando Powerhsell invoke-command -session. In alcuni casi, almeno uno dei lavori secondari remoti termina, ma lo stato della sessione PS locale segnala i lavori come "Running" e la sessione si blocca in attesa del completamento del processo.Come si esce correttamente un processo remoto in una sessione di PowerShell

Si tratta di un errore noto in PSv2? C'è una soluzione alternativa o tecnica per consentire a PS di rilevare correttamente quando un lavoro secondario remoto termina?

+0

Hai qualche codice per mostrare quali oggetti o proprietà stai guardando? Hai provato a guardare lo * spazio * * della sessione * della sessione? [System.Management.Automation.RemoteRunspace] Evento AvailabilityChanged? –

+0

Come si determina che il lavoro figlio è terminato? –

risposta

0

Quando si utilizza Invoke-Command -Session, credo che sarà necessario utilizzare il comando Get-PSSession per ottenere lo stato aggiornato. Da Technet:

-Session

Esegue il comando nelle sessioni di Windows PowerShell specificate (PSSession). Immettere una variabile che contiene le PSSession o un comando che crea o ottiene le PSSession, ad esempio un comando New-PSSession o Get-PSSession.