ParallelTry
ParallelTry[f,{arg1,arg2,…}]
并行计算 f[argi],返回第一个结果.
ParallelTry[f,{arg1,arg2,…},k]
返回前 k 个结果的列表.
更多信息和选项
- ParallelTry 在不同的内核和处理器之间自动分配计算.
- 在产生 k 个结果后,任何进行的计算将取消.
- 如果另一个 f[argi] 的计算结果是 $Failed,则它被忽略.
- 如果没有得到结果,而不是 $Failed,ParallelTry 返回 $Failed.
- ParallelTry[f,{arg1,arg2,…}] 将 f[argi] 的计算分配到不同内核和处理器上,从 arg1 开始.
- 如果 argi 的数量多于内核数量,则不计算某些 argi,除非之前的一些参数返回 $Failed.
- ParallelTry 采用的 DistributedContexts 选项与 ParallelTable 相同.
范例
打开所有单元关闭所有单元范围 (2)
选项 (5)
DistributedContexts (5)
恢复 DistributedContexts 选项的值为默认值:
应用 (5)
属性和关系 (5)
ParallelTry 通常返回收到的第一个成功的结果:
ParallelTry 与 ParallelMap 工作方式相似,但是只返回一个结果:
ParallelTry 实质上以 WaitNext 的形式执行:
对于来自于程序包的函数,使用 ParallelNeeds 而不是 DistributeDefinitions:
可能存在的问题 (3)
使用 DistributeDefinitions 分配这样的定义:
或者,设置 DistributedContexts 选项包括所有的上下文:
文本
Wolfram Research (2008),ParallelTry,Wolfram 语言函数,https://reference.wolfram.com/language/ref/ParallelTry.html (更新于 2010 年).
CMS
Wolfram 语言. 2008. "ParallelTry." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2010. https://reference.wolfram.com/language/ref/ParallelTry.html.
APA
Wolfram 语言. (2008). ParallelTry. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/ParallelTry.html 年