blob: c038be64059514f115680e3c5461f69add692bb8 (
plain) (
tree)
|
|
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 isMainModule:
setGlobalDispatcher(newDispatcher())
var i = waitFor asyncRecursionTest()
echo i
|