1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
discard """
matrix: "--mm:refc"
output: '''foobarfoobar
bazbearbazbear
1'''
cmd: "nim $target --threads:on $options $file"
disabled: "openbsd"
"""
import threadpool
proc computeSomething(a, b: string): string = a & b & a & b & "\n"
proc main =
let fvA = spawn computeSomething("foo", "bar")
let fvB = spawn computeSomething("baz", "bear")
echo(^fvA, ^fvB)
main()
sync()
type
TIntSeq = seq[int]
proc t(): TIntSeq =
result = @[1]
proc p(): int =
var a: FlowVar[TIntSeq]
parallel:
var aa = spawn t()
a = aa
result = (^a)[0]
echo p()
|