Files
Nim/tests/async/tasyncrecursion.nim
2018-12-11 21:23:22 +01:00

22 lines
474 B
Nim

discard """
output: "50005000"
"""
import asyncdispatch
proc asyncRecursionCycle*(counter: int): Future[int] =
var retFuture = newFuture[int]("asyncRecursionTest")
retFuture.complete(counter + 1)
return retFuture
proc asyncRecursionTest*(): Future[int] {.async.} =
var i = 0
result = 0
while i < 10_000:
inc(result, await asyncRecursionCycle(i))
inc(i)
when true:
setGlobalDispatcher(newDispatcher())
var i = waitFor asyncRecursionTest()
echo i