, 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)
}.
-spec stop(t()) ->
{}.
stop(?T
- { erlang_statistics = TidErlangStatistics
+ { erlang_statistics = TidErlangStatistics
, erlang_process_info_reductions = TidErlangProcessInfoReductions
}
) ->
-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) ->