# HG changeset patch # User Tuomo Valkonen # Date 1577524361 -7200 # Node ID e9edf00242a344ba5cbe3cba168e0a07b77a172b # Parent 59d94d475b5a6e2dd545b3812e2a9bc313fe8da2 @backgroundif diff -r 59d94d475b5a -r e9edf00242a3 src/Util.jl --- a/src/Util.jl Sat Dec 28 10:14:02 2019 +0200 +++ b/src/Util.jl Sat Dec 28 11:12:41 2019 +0200 @@ -25,7 +25,8 @@ curry, ⬿, @threadsif, - @background + @background, + @backgroundif ########## @@ -35,9 +36,9 @@ macro threadsif(threads, loop) return esc(:(if $threads Threads.@threads $loop - else + else $loop - end)) + end)) end macro background(bgtask, fgtask) @@ -46,6 +47,15 @@ wait(t)) end +macro backgroundif(threads, bgtask, fgtask) + return :(if $(esc(threads)) + @background $(esc(bgtask)) $(esc(fgtask)) + else + $(esc(bgtask)) + $(esc(fgtask)) + end) +end + ######################## # Functional programming #########################