diff options
author | Marco Ziener <mziener@lavabit.com> | 2010-10-12 10:13:08 +0200 |
---|---|---|
committer | Marco Ziener <mziener@lavabit.com> | 2010-10-12 10:13:08 +0200 |
commit | 5ef51b5a6dd4d346b34d5c25c8fa9864b016728c (patch) | |
tree | af3d8ae5aa1438d6e7a6d32fba919e56dc931b71 | |
parent | 466cff95509b577b480eb91ba794e79e754dc01e (diff) | |
download | erlang-5ef51b5a6dd4d346b34d5c25c8fa9864b016728c.tar.gz erlang-5ef51b5a6dd4d346b34d5c25c8fa9864b016728c.tar.xz erlang-5ef51b5a6dd4d346b34d5c25c8fa9864b016728c.zip |
RPCServer
-rw-r--r-- | remote.erl | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/remote.erl b/remote.erl new file mode 100644 index 0000000..d3cf88a --- /dev/null +++ b/remote.erl @@ -0,0 +1,23 @@ +-module(remote). +-export([start/0, calculate/1]). + +rpc(C) -> + rechner!{self, C}, + receive + {rechner, Reply} -> + Reply + end. + +loop() -> + receive + {From, {calculate, String}} -> + From ! {rechner, {calculate, calculate(String)}}, + loop() + end. + +start() -> + register(rechner, spawn(fun () -> loop() end)). + +calculate(String) -> + calc:eval(String). + |