当前位置: 首页 > 知识库问答 >
问题:

Foreach-object并行块中的错误处理-Powershell 7

丁宏盛
2023-03-14

foreach-object并行块下面捕获错误的最佳方法是什么,因为将有三个单独的线程/运行空间运行并执行块中编写的代码,并且多个错误/异常可能同时发生?是否可以捕获列表/变量中的所有错误,并在脚本执行结束时显示?

1..3 | ForEach-Object -ThrottleLimit 3 -Parallel  {
            #Some code here that throws error                
}

共有1个答案

李利
2023-03-14

-errorvariable参数将在末尾给出一个ErrorRecords的arraylist:

1..3 | ForEach-Object -ThrottleLimit 3 -Parallel {
    throw "Item $_ Error"
} -ErrorVariable allErrors
 类似资料:
  • 我们在SQL Server存储过程中使用以下错误处理模式: 但是当存储过程中出现以下错误时,try/catch块不起作用。 错误详细信息:存储过程试图将值插入非NULL列。 在执行存储过程中,我得到了以下错误 EXECUTE之后的事务计数表示BEGIN和COMMIT语句的数量不匹配。上一个计数=1,当前计数=0。 msg 3903, Level 16, State 1, Line 30 ROLLB

  • 我完全知道Swift没有一个try/catch机制来捕捉异常(好的,Swift2.0现在支持它们)。我还了解到,许多API方法返回一个NSError,如果出现问题,该NSError将被一个错误对象填充。所以请不要向我提出这个问题:Swift语言中的错误处理 但这仍然不能解释如何对您自己代码中的运行时错误做出反应,比如数组越界访问或强制展开一个为nil的可选值。例如: 或 每个程序员都会偶尔犯这样的

  • 问题内容: 给出以下代码: 我可以假设’dowork’函数将并行执行吗? 这是实现并行性的正确方法,还是对每个goroutine使用通道并将单独的“ workwork”工人分开更好? 问题答案: 关于GOMAXPROCS,您可以在Go 1.5的发行文档中找到: 默认情况下,Go程序在将GOMAXPROCS设置为可用内核数的情况下运行;在以前的版本中,它默认为1。 关于防止main功能立即退出,您可

  • 问题内容: 什么是在python 2.7中进行并行处理的简单代码?我在网上找到的所有示例都是令人费解的,其中包括不必要的代码。 我如何做一个简单的蛮力整数分解程序,在其中我可以在每个核(4)上分解一个整数?我的真实程序可能只需要2个内核,并且需要共享信息。 我知道并存python和其他库,但是我想将使用的库数保持最少,因此我想使用和/或库,因为它们是python附带的 问题答案: 从python中

  • 问题内容: 解析器不知道要做什么时的默认行为是将消息打印到终端,例如: 第1:23行在“}”处缺少DECIMAL 这是一个很好的信息,但是在错误的位置。我宁愿将此作为例外。 我尝试使用,但是会抛出一个没有消息的消息(由引起,也没有消息)。 有什么办法可以让我通过异常报告错误,同时又保留消息中的有用信息? 这就是我真正想要的—我通常在规则中使用动作来构建对象: 然后,当我调用解析器时,我将执行以下操

  • 问题内容: 我有一系列要解决的承诺 我继续继续诺言链。看起来像这样 我想添加一个catch语句来处理单个promise,以防万一出错,但是当我尝试时,返回它发现的第一个错误(忽略其余的),然后我无法从其余的promise中获取数据数组(没有错误)。 我尝试做类似.. 但这并不能解决。 谢谢! - 编辑: 下面的答案完全正确,但代码由于其他原因而中断。如果有人感兴趣,这就是我最终得到的解决方案… 节