Provides an alternative to PSjobs with greater performance and less overhead to run commands in the background, freeing up the console.
####Download and install PoshRSJob using PowerShell PSGet:
Install-Module -Name PoshRSJob
####Download the latest release (1.7.2.4) https://github.com/proxb/PoshRSJob/releases/download/1.7.2.4/PoshRSJob.zip
More information and examples here: https://learn-powershell.net/2015/04/19/latest-updates-to-poshrsjob/
Older post with some legacy examples found here: https://learn-powershell.net/2015/03/31/introducing-poshrsjob-as-an-alternative-to-powershell-jobs/
####Now working on Linux/MacOS with PowerShell Core!
$Test = 'test'
$Something = 1..10
1..5|start-rsjob -Name {$_} -ScriptBlock {
[pscustomobject]@{
Result=($_*2)
Test=$Using:Test
Something=$Using:Something
}
}
Get-RSjob | Receive-RSJob
####This shows the streaming aspect with Wait-RSJob
1..10|Start-RSJob {
if (1 -BAND $_){
"First ($_)"
}Else{
Start-sleep -seconds 2
"Last ($_)"
}
}|Wait-RSJob|Receive-RSJob|ForEach{"I am $($_)"}