Ben işbirliği iki görevi (eşyordamlar) almak için çalıştık (görevleri) geçerek ama boşuna. Aşağıda sahip olduğum şey. Yazdırma kaynaklarını hiçbir zaman kaynak veya havuz işlevlerinden göremiyorum ve wait() çağrısı sonsuza kadar asılıyormuş gibi görünüyor. Ben bunun yerine bir argüman olarak() batmaya geçme, s (kaynak) görev global değişken hale denedi, ama bu ya (ben global olarak Sinke() içine ilan bile işe görünmüyor.Julia: değiş tokuş eden kavramlar arasında veri
Bu. Ben de) (işlevlerini kaynağı (iç yieldto() çağırarak) ve lavabo ile denemişlerdir
ben git kanalları ve goroutines ile çok kolayca yapabilirsiniz keşfetti şey türüdür, ama ben hala çıkmazla görünmektedir.
herhangi bir şekilde veri paylaşımı çoklu görevlerin bir örnekleherkes? İdeal olarak, ben bir boru hattı veya görevlerin uzun bir zincir olurdu.
Yardımlarınız için şimdiden teşekkür ederiz.
println("Hello")
function source()
println("source start")
produce("start")
produce("stop")
end
function sink(p::Task)
println("sink start")
println(consume(p))
println(consume(p))
end
a = Task(source)
b = Task(() -> sink(a) )
wait(b)
wait(a)
println("Goodbye")
Büyük! Açık cevap için teşekkürler. Julia'nın koroutinler üzerinde çok daha iyi bir kontrol sağladığını görebiliyorum. Yardımın için minnettarım. –