0%

本文介绍 PowerShell 中多线程相关内容。 Runspace 在 PowerShell 中,Runspace 是一个独立的执行环境,每个 Runspace 都有自己的变量、函数和状态,互相独立,各 Runspace 之间可以独立的运

Windows 的 Job Objects(作业对象)允许将进程组作为一个单元进行管理。 作业对象是可访问的、安全的、可共享的对象,用于控制与其关联的进程的属性。 针

PowerShell 主要使用 C# 编写,其内部运行环境也是基于 .NET Framework,因此 PowerShell 与 .NET 交互十分简单。 本文给出了一个使用 PowerShell 脚本调用 C# 代码操作 Job Objects 的示例,该示

PowerShell 可以使用 Windows Global Event 来实现防止在同一时刻同一个脚本重复运行。 示例脚本 function Lock-Singleton { $Locked = $false $Global:Mutex = New-Object System.Threading.Mutex($true, "Global\ChangeToYourUniqueEventNameHere", [ref]$Locked) if (-not $Locked) { $Global:Mutex.Close() Write-Host "another process is running now, exit" Exit 1 } } Lock-Singleton Write-Host "doing something here, sleep 10s" Start-Sleep -Seconds 10