gpt4 book ai didi

Powershell:不要等待函数返回

转载 作者:行者123 更新时间:2023-12-04 00:58:38 24 4
gpt4 key购买 nike

我有一个 Powershell 脚本,我在其中调用了一个名为 generate_html 的函数。

有没有办法调用函数而不是在继续下一个函数调用之前等待它的返回?

我宁愿不必将其分解为多个脚本并同时运行这些脚本。

function generate_html($var)
{
...
}

generate_html team1
generate_html team2

最佳答案

您可以使用 Start-Job 将方法作为异步作业启动。 cmdlet。

所以,你会做这样的事情:

function generate_html($var)
{
#snipped
}

Start-Job -ScriptBlock { generate_html team1 }

如果您需要监视作业是否完成,请存储 Start-Job 的输出或使用 Get-Job在当前 session 中开始所有工作,取出您想要的工作。
一旦你有了,检查 State属性来查看值是否为 Finished
编辑 :
实际上,我的错误是,作业将在另一个线程中,因此在您开始作业的线程中定义或不可用的函数(不在 powershell 知道的模块中)不可用。

尝试将您的函数声明为脚本 block :
$generateHtml = { 
param($var)
#snipped
}

Start-Job -ScriptBlock $generateHtml -ArgumentList team1
Start-Job -ScriptBlock $generateHtml -ArgumentList team2

关于Powershell:不要等待函数返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21681862/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com