2015-06-14 19 views
2

是否需要使用鎖(或互斥體)來訪問茱莉亞不同任務(協程)中的相同(全局)變量?從多個任務訪問相同的變量

茱莉亞文件明確規定了corutines使用相同的線程:

農產品()和消費()不啓動,可以在單獨的CPU上運行的線程。在並行計算的主題下討論真正的內核線程。

在這種情況下,我需要考慮不同協同程序之間的任何競態條件,同時訪問不同異步任務中某些全局變量的值嗎?茱莉亞調度程序在單個賦值/訪問操作中是否具有任何原子操作特性?

+0

Julia 0.3甚至沒有鎖。 –

回答

1

從文檔

在朱莉婭

並行編程是建立在兩個基本:遠程引用遠程調用

換句話說,它不是julistic使用編程鎖,但通過獲取值和遠程調用。 (link)中提供的示例。您還可以在在線存儲庫中查找並行示例(例如this)。