From b8f16f0ab8099733a9fb1651c74af9cd1f8837ff Mon Sep 17 00:00:00 2001 From: Hans Bolinder Date: Mon, 25 Sep 2017 15:38:33 +0200 Subject: stdlib: Introduce gen_server benchmark --- .../test/stdlib_bench_SUITE_data/simple_server.erl | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 lib/stdlib/test/stdlib_bench_SUITE_data/simple_server.erl (limited to 'lib/stdlib/test/stdlib_bench_SUITE_data/simple_server.erl') diff --git a/lib/stdlib/test/stdlib_bench_SUITE_data/simple_server.erl b/lib/stdlib/test/stdlib_bench_SUITE_data/simple_server.erl new file mode 100644 index 0000000000..bd43f686e8 --- /dev/null +++ b/lib/stdlib/test/stdlib_bench_SUITE_data/simple_server.erl @@ -0,0 +1,31 @@ +-module(simple_server). + +%% Local process. No timer. No monitor. + +-export([start/1, reply/2, stop/1]). + +start(State) -> + spawn(fun() -> loop(State) end). + +stop(P) -> + P ! {stop, self()}, + receive + ok -> + ok + end. + +loop(S) -> + receive + {reply, P, M} -> + P ! M, + loop(S); + {stop, P} -> + P ! ok + end. + +reply(P, M) -> + P ! {reply, self(), M}, + receive + M -> + M + end. -- cgit v1.2.3