DistributeDefinitions
DistributeDefinitions[s1,s2,…]
将符号 si 的所有定义分配给所有并行内核.
DistributeDefinitions["context`"]
分配指定上下文下的所有符号定义.
更多信息和选项
- DistributeDefinitions 实际上把 ParallelEvaluate 应用到符号 si 的所有赋值和属性上,不仅包括拥有值,还包括下值、上值及其它类型的值.
- DistributeDefinitions 将其自身递归地应用于符号 si 的定义中出现的任何符号.
- DistributeDefinitions 有属性 HoldAll.
- DistributeDefinitions 实际上“记录”符号 si 的定义,这样它们可以自动的分配到可能启动的每个新并行内核中.
- 对于任何表达式 expr,DistributeDefinitions[expr] 分配所有 expr 中出现的符号定义.
- DistributeDefinitions 返回用 HoldForm 包装的实际分配的符号列表.
范例
打开所有单元关闭所有单元属性和关系 (7)
DistributeDefinitions 会覆盖任何前面出现的值和属性:
DistributeDefinitions 使用 ParallelEvaluate 来把定义传输给所有内核:
一个明确的 ParallelEvaluate 做同样的事情:
对新内核记录分配好的定义;ParallelEvaluate 的效果则不是:
使用 ParallelNeeds 在所有并行内核上设置程序包:
使用 DistributeDefinitions 设置您自己的定义:
$DistributedDefinitions 给出了所有已分配定义的符号列表:
可能存在的问题 (5)
DistributeDefinitions 的使用并不会阻止定义的自动分配:
带有 ReadProtected 属性的符号定义不能被分发:
文本
Wolfram Research (2008),DistributeDefinitions,Wolfram 语言函数,https://reference.wolfram.com/language/ref/DistributeDefinitions.html (更新于 2010 年).
CMS
Wolfram 语言. 2008. "DistributeDefinitions." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2010. https://reference.wolfram.com/language/ref/DistributeDefinitions.html.
APA
Wolfram 语言. (2008). DistributeDefinitions. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/DistributeDefinitions.html 年