Provides an alternative to PSjobs with greater performance and less overhead to run commands in the background, freeing up the console and allowing throttling on the jobs.
PowerShell
Clone or download
proxb Merge pull request #176 from codykonior/master
Save and restore $env:PSModulePath until we find why it's being clobbered on PS Core
Latest commit 83ce4ae Feb 25, 2018

README.md

PoshRSJob 1.7.4.4

Build status Join the chat at https://gitter.im/proxb/PoshRSJob

Provides an alternative to PSjobs with greater performance and less overhead to run commands in the background, freeing up the console.

Be sure to check out and contribute to the Wiki!

Download and install PoshRSJob from the PowerShellGallery using PowerShell:

Install-Module -Name PoshRSJob

Download the latest release (1.7.4.4)

https://github.com/proxb/PoshRSJob/releases/download/1.7.4.4/PoshRSJob.zip

More information and examples here: http://learn-powershell.net/2015/04/19/latest-updates-to-poshrsjob/

Older post with some legacy examples found here: http://learn-powershell.net/2015/03/31/introducing-poshrsjob-as-an-alternative-to-powershell-jobs/

Now working on Linux/MacOS with PowerShell Core!

alt tag

Examples

=================

$Test = 'test'
$Something = 1..10
1..5|start-rsjob -Name {$_} -ScriptBlock {
        [pscustomobject]@{
            Result=($_*2)
            Test=$Using:Test
            Something=$Using:Something
        }
}            
Get-RSjob | Receive-RSJob

alt tag

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 $($_)"}

alt tag

Nano Support for PoshRSJob

alt tag