usr/Clear-PsWorkingSet.ps1
Set-Alias -Name clpws -Value Clear-PsWorkingSet function Clear-PsWorkingSet { [CmdletBinding()]param($PSBoundParameters) end { New-Delegate kernel32 { bool SetProcessWorkingSetSize([ptr, int, int]) } New-PsProxy $PSBoundParameters -Callback { !$_.Handle ? ( Write-Verbose "$($_.ProcessName) ($( $_.Id)): cannot clear working set." ) : ( "$($_.ProcessName) ($($_.Id )) : {0}" -f $kernel32.SetProcessWorkingSetSize.Invoke( $_.Handle, -1, -1 )) } } } Export-ModuleMember -Alias clpws -Function Clear-PsWorkingSet |