mirror of
https://github.com/logos-storage/apatheia.git
synced 2026-01-05 22:43:10 +00:00
updates
This commit is contained in:
parent
5fd1e789bb
commit
1156b0b63a
@ -24,6 +24,7 @@ proc worker(data: SeqCursor, sig: ThreadSignalPtr) =
|
|||||||
os.sleep(10)
|
os.sleep(10)
|
||||||
echo "running worker: "
|
echo "running worker: "
|
||||||
echo "worker: ", data.data
|
echo "worker: ", data.data
|
||||||
|
echo "worker:addr: ", cast[pointer](data.data).repr
|
||||||
# for i, d in data.data:
|
# for i, d in data.data:
|
||||||
# for j, c in d:
|
# for j, c in d:
|
||||||
# data.data[i][j] = char(c.uint8 + 10)
|
# data.data[i][j] = char(c.uint8 + 10)
|
||||||
@ -41,11 +42,13 @@ proc runTest(tp: TaskPool, sig: ThreadSignalPtr) {.async.} =
|
|||||||
|
|
||||||
## adding fut.wait(100.milliseconds) creates memory issue
|
## adding fut.wait(100.milliseconds) creates memory issue
|
||||||
await wait(sig)
|
await wait(sig)
|
||||||
|
echo "data:addr: ", data.addr.pointer.repr
|
||||||
|
echo "data:cursor:addr: ", cast[pointer](cur.data).repr
|
||||||
## just doing the wait is fine:
|
## just doing the wait is fine:
|
||||||
# await wait(sig)
|
# await wait(sig)
|
||||||
|
|
||||||
proc runTests(tp: TaskPool, sig: ThreadSignalPtr) {.async.} =
|
proc runTests(tp: TaskPool, sig: ThreadSignalPtr) {.async.} =
|
||||||
for i in 1..3_000:
|
for i in 1..1:
|
||||||
try:
|
try:
|
||||||
await runTest(tp, sig)
|
await runTest(tp, sig)
|
||||||
except AsyncTimeoutError:
|
except AsyncTimeoutError:
|
||||||
@ -60,4 +63,4 @@ suite "async tests":
|
|||||||
|
|
||||||
asyncTest "test":
|
asyncTest "test":
|
||||||
await runTests(tp, sig)
|
await runTests(tp, sig)
|
||||||
os.sleep(10_000)
|
# os.sleep(10_000)
|
||||||
|
|||||||
@ -44,7 +44,7 @@ proc runTest(tp: TaskPool, sig: ThreadSignalPtr, i: int) {.async.} =
|
|||||||
|
|
||||||
proc runTests(tp: TaskPool, sig: ThreadSignalPtr) {.async.} =
|
proc runTests(tp: TaskPool, sig: ThreadSignalPtr) {.async.} =
|
||||||
var futs = newSeq[Future[void]]()
|
var futs = newSeq[Future[void]]()
|
||||||
for i in 1..40_000:
|
for i in 1..1:
|
||||||
let f = runTest(tp, sig, i)
|
let f = runTest(tp, sig, i)
|
||||||
# futs.add f
|
# futs.add f
|
||||||
await f
|
await f
|
||||||
|
|||||||
@ -16,11 +16,11 @@ import taskpools
|
|||||||
## generally does so in a few seconds of running.
|
## generally does so in a few seconds of running.
|
||||||
##
|
##
|
||||||
|
|
||||||
proc worker(data: ptr seq[seq[char]], sig: ThreadSignalPtr) =
|
proc worker(data: seq[seq[char]], sig: ThreadSignalPtr) =
|
||||||
# os.sleep(100)
|
# os.sleep(100)
|
||||||
echo "running worker: "
|
echo "running worker: "
|
||||||
echo "worker: ", data.pointer.repr
|
echo "worker: ", data.unsafeAddr.pointer.repr
|
||||||
echo "worker: ", data[]
|
echo "worker: ", data
|
||||||
# for i, d in data:
|
# for i, d in data:
|
||||||
# for j, c in d:
|
# for j, c in d:
|
||||||
# data[i][j] = char(c.uint8 + 10)
|
# data[i][j] = char(c.uint8 + 10)
|
||||||
@ -35,7 +35,7 @@ proc runTest(tp: TaskPool, sig: ThreadSignalPtr, i: int) {.async.} =
|
|||||||
var data = @[obj1, obj2]
|
var data = @[obj1, obj2]
|
||||||
|
|
||||||
# echo "spawn worker"
|
# echo "spawn worker"
|
||||||
tp.spawn worker(addr data, sig)
|
tp.spawn worker(data, sig)
|
||||||
|
|
||||||
await wait(sig)
|
await wait(sig)
|
||||||
echo "data: ", data.addr.pointer.repr
|
echo "data: ", data.addr.pointer.repr
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user