X-Git-Url: https://git.xandkar.net/?a=blobdiff_plain;f=src%2Fbeam_stats_delta.erl;h=fae6c6333b0081e01ebce752873ae1ed9e398c26;hb=HEAD;hp=8820d71b380703ac8b59b6365476b95e05c83c94;hpb=140077ceda11a34f4880fd2f4871b3aaab34f13d;p=beam_stats.git diff --git a/src/beam_stats_delta.erl b/src/beam_stats_delta.erl index 8820d71..fae6c63 100644 --- a/src/beam_stats_delta.erl +++ b/src/beam_stats_delta.erl @@ -32,7 +32,8 @@ start() -> , public ], ?T - { erlang_statistics = ets:new(beam_stats_delta_erlang_statistics, Options) + { erlang_statistics = + ets:new(beam_stats_delta_erlang_statistics, Options) , erlang_process_info_reductions = ets:new(beam_stats_delta_erlang_process_info_reductions, Options) }. @@ -40,7 +41,7 @@ start() -> -spec stop(t()) -> {}. stop(?T - { erlang_statistics = TidErlangStatistics + { erlang_statistics = TidErlangStatistics , erlang_process_info_reductions = TidErlangProcessInfoReductions } ) -> @@ -61,11 +62,12 @@ gc(?T{erlang_process_info_reductions=Table}=T) -> -spec gc(t(), pid()) -> {}. gc(?T{erlang_process_info_reductions=Table}=T, Pid) -> + Next = ets:next(Table, Pid), case beam_stats_source:erlang_is_process_alive(Pid) of true -> true ; false -> ets:delete(Table, Pid) end, - case ets:next(Table, Pid) + case Next of '$end_of_table' -> {} ; NextPid when is_pid(NextPid) ->