我有一个查询更改的 URL。查询存储在一个数组中,因此在循环中更改 URL 不是问题(我对任何特定查询都不感兴趣)。
我很难为每个 URL 创建作业并同时启动一组作业并监视它们。
我想开始一次遍历 5 个查询数组,我将调用 5 个新 URL,因此每次迭代都需要一个作业数组,其元素是该迭代的 URL。
我的做法对吗?任何指针将不胜感激!
这是演示我的方法的示例代码:
$queries = 1..10
$jobs = @()
foreach ($i in $queries) {
if ($jobs.Count -lt 5) {
$ScriptBlock = {
$query = $queries[$i]
$path = "http://mywebsite.com/$query"
Invoke-WebRequest -Uri $path
}
$jobs += Start-Job -ScriptBlock $ScriptBlock
} else {
$jobs | Wait-Job -Any
}
}