Mam skrypt PowerShell do przetwarzania wsadowego na kilku obrazach i chciałbym przeprowadzić równoległe przetwarzanie. Wydaje się, że Powershell ma pewne opcje przetwarzania w tle, takie jak start-job, wait-job itp., Ale jedynym dobrym źródłem, które znalazłem do wykonywania równoległej pracy, było napisanie tekstu skryptu i uruchomienie go ( wielowątkowość PowerShell )
Idealnie, chciałbym coś podobnego do równoległego foreach w .net 4.
Coś całkiem pozornego, jak:
foreach-parallel -threads 4 ($file in (Get-ChildItem $dir))
{
.. Do Work
}
Może lepiej byłoby, gdybym zszedł do C # ...
(get-job $a).jobstateinfo.state;
receive-job (wait-job ($a = start-job { "heyo!" })); remove-job $a
lub$a = start-job { "heyo!" }; wait-job $a; receive-job $a; remove-job $a
Zauważ również, że jeśli zadzwoniszreceive-job
przed zakończeniem zadania, możesz w ogóle nic nie otrzymać.