erlang各种有用的函数包括一些有用nif封装,还有一些性能测试case。
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
 
 
 
 
 
 

22 行
671 B

-ifdef(OTP_RELEASE). %% this implies 21 or higher
-define(EXCEPTION(Class, Reason, Stacktrace), Class:Reason:Stacktrace).
-define(GET_STACK(Stacktrace), Stacktrace).
-else.
-define(EXCEPTION(Class, Reason, _), Class:Reason).
-define(GET_STACK(_), erlang:get_stacktrace()).
-endif.
-define(GSS(Stacktrace), try throw(0) catch _:_:Stacktrace -> Stacktrace end).
%% 追溯打印函数调用流程
-define(PRINT_STACK(Tag),
Stack =
try
throw(0)
catch
?EXCEPTION(_Class, _Reason, Stacktrace) ->
?GET_STACK(Stacktrace)
end,
io:format("tarce tag:~p cur Stacktrace:", [Tag]),
io:format(utParseStack:parseStack(Stack))
).