Yve*_*ves 5 synchronized julia
我和朱莉娅一起工作.IDE是Juno.
如果我是对的,@async可以生成一个任务,它就像一个线程.
所以我们可以这样做:
@async begin
# do something1
end
@async begin
# do something2
end
Run Code Online (Sandbox Code Playgroud)
现在,我需要锁定一个线程.例如,do something1是将消息推送到列表并do something2从同一列表中弹出消息.
就像synchronized在Java中一样.
是什么synchronized在朱莉娅?
还有一个@sync宏:
帮忙?> @sync
等待@async、@spawn、@spawnat 和@parallel 的所有动态封闭使用完成。封闭的异步操作抛出的所有异常都会被收集并作为 CompositeException 抛出。
@sync @async begin
# do something1
end
@sync begin
# some code
@async begin
# do something2
end
@async # do something 3
end
Run Code Online (Sandbox Code Playgroud)