summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--tests/threads/tactors2.nim25
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/threads/tactors2.nim b/tests/threads/tactors2.nim
new file mode 100644
index 000000000..5683f98ba
--- /dev/null
+++ b/tests/threads/tactors2.nim
@@ -0,0 +1,25 @@
+discard """
+  output: "1"
+"""
+
+import actors
+
+type
+  some_type {.pure, final.} = object
+    bla: int
+
+proc thread_proc(input: some_type): some_type {.thread.} =
+  result.bla = 1
+
+proc main() =
+  var actorPool: TActorPool[some_type, some_type]
+  createActorPool(actorPool, 1)
+
+  var some_data: some_type
+  
+  var inchannel = spawn(actorPool, some_data, thread_proc)
+  var recv_data = ^inchannel
+  close(inchannel[])
+  echo recv_data.bla
+
+main()