aboutsummaryrefslogtreecommitdiff
path: root/tests/bench/rss/a0.zc
diff options
context:
space:
mode:
Diffstat (limited to 'tests/bench/rss/a0.zc')
-rw-r--r--tests/bench/rss/a0.zc11
1 files changed, 11 insertions, 0 deletions
diff --git a/tests/bench/rss/a0.zc b/tests/bench/rss/a0.zc
new file mode 100644
index 0000000..b8555d0
--- /dev/null
+++ b/tests/bench/rss/a0.zc
@@ -0,0 +1,11 @@
+namespace;
+include rt, actor;
+typecheck on;
+int work(int n) { rt.syscall(48, 500, 0, 0); return n + 1; }
+fn main() {
+ let n = 0, i = 0, sum = 0;
+ actor.Actor<int, int>*[101] as;
+ while (i < n) { as[i] = rt.new(actor.Actor<int, int>); as[i].spawn(work); as[i].recv(fn(int v) { sum = sum + v; return 0; }); as[i].send(i); i++; }
+ i = 0; while (i < n) { as[i].await(); as[i].close(); i++; }
+ rt.put_n(sum); rt.put_c(10); return 0;
+}