【发布时间】:2017-02-09 16:50:14
【问题描述】:
我正在尝试找出如何在宏中正确使用 RemoteChannel。在函数或 REPL 中,以下代码有效:
addprocs(3)
r = RemoteChannel(3)
@spawnat(3,put!(r,10))
fetch(r) # Gives 10
但是,如果我将相同的内容放入宏中:
macro rrtest(src,val)
quote
r = RemoteChannel($(esc(src)))
@spawnat($(esc(src)), put!(r, $(esc(val))))
println(fetch(r))
end
end
然后用相同的参数调用它
@rrtest(3,10)
然后 REPL 就会停止。像这样使用 RemoteChannels 有什么问题吗?
【问题讨论】:
标签: parallel-processing metaprogramming julia