Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
erlang中已加载模块的事件_Erlang - Fatal编程技术网

erlang中已加载模块的事件

erlang中已加载模块的事件,erlang,Erlang,在erlang中加载模块后,如何获取事件 事件的形式可以是执行fun/MFA、向任意进程发送消息等。如果标准库中没有支持,那么最好的解决方法是什么 我能想到的解决办法是: 在代码模块上运行跟踪 在循环中扫描加载的模块次 另外一个限制是,加载的模块中不应该有特殊的挂钩,因为这是用于调试应用程序的。标准库模块预计不会重新加载,并且假定工具应用程序正在运行。存在-on_load module指令。您可以使用此指令将某些函数设置为在加载模块时运行。请参阅中的详细信息。重要的是,重新加载的代码中没有特殊的

在erlang中加载模块后,如何获取事件

事件的形式可以是执行fun/MFA、向任意进程发送消息等。如果标准库中没有支持,那么最好的解决方法是什么

我能想到的解决办法是:

在代码模块上运行跟踪 在循环中扫描加载的模块次
另外一个限制是,加载的模块中不应该有特殊的挂钩,因为这是用于调试应用程序的。标准库模块预计不会重新加载,并且假定工具应用程序正在运行。

存在-on_load module指令。您可以使用此指令将某些函数设置为在加载模块时运行。请参阅中的详细信息。

重要的是,重新加载的代码中没有特殊的挂钩,这是一个调试工具,因此为每个可能被调试的模块编写此工具将非常繁琐。出于调试目的,您应该使用调试工具,即跟踪。这是一个UI,而不是跟踪:D p.s.我知道在Observer中进行跟踪我最终采用了跟踪解决方案,尽管我认为它不是很干净: