diff options
Diffstat (limited to 'erlang/monitor_translate.erl')
-rw-r--r-- | erlang/monitor_translate.erl | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/erlang/monitor_translate.erl b/erlang/monitor_translate.erl new file mode 100644 index 0000000..03e4bfe --- /dev/null +++ b/erlang/monitor_translate.erl @@ -0,0 +1,16 @@ +-module(monitor_translate). +-export([loop/0]). + +loop() -> + process_flag(trap_exit, true), + receive + new -> + io:format("Starting translator.~n"), + register(translator, spawn_link(translate_service, loop, [])), + loop(); + {'EXIT', From, Reason} -> + io:format("Translator ~p died with reason ~p, restarting.~n", + [From, Reason]), + self() ! new, + loop() + end. |