Ceci est le message d'exception lancé par Gen_server lorsqu'il n'est pas démarré.Comment intercepter Message d'Exception à Erlang?
([email protected])32> R11 = system_warning:self_test("SysWarn").
** exception exit: {noproc,
{gen_server,call,
[system_warning_sup,
{start_child,
{system_warning_SysWarn,
{system_warning,start_link,[{system_warning_SysWarn}]},
permanent,10,worker,
[system_warning]}},
infinity]}}
in function gen_server:call/3
in call from system_warning_sup:'-start_child/1-lc$^0/1-0-'/1
in call from system_warning:self_test/1
([email protected])33> R11.
* 1: variable 'R11' is unbound
Maintenant, ce que je veux faire est d'attraper ce message d'exception & mis dans la variable R11 (ci-dessus montre non liée). Je veux le faire parce que si gen_sever n'est pas démarré, je veux commencer après avoir reçu ce message. J'ai aussi essayé d'utiliser handle_info mais je n'ai pas réussi à intercepter l'exception ou je ne suis pas capable de l'implémenter correctement. Quelqu'un peut-il m'aider s'il vous plaît avec ce problème en fournissant du code par exemple.
Trouvé une question liée à ma question. http://stackoverflow.com/questions/1335758/how-can-i-write-an-exception-stack-trace-in-erlang-after-catching-it – iankits