asyncdispatch.nim recursion test. (#5534)

This commit is contained in:
Eugene Kabanov
2017-03-14 21:03:13 +02:00
committed by Andreas Rumpf
parent b1c494a150
commit ac2f1996a8

View File

@@ -0,0 +1,21 @@
discard """
file: "tasyncrecursion.nim"
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:
var i = waitFor asyncRecursionTest()
echo i