|
@@ -537,7 +537,7 @@ clean_group_table(MemberPid, #pool{group = _GroupName}) ->
|
|
|
% If `Pid' is the last element in `CPid's pid list, then the `CPid'
|
|
|
% entry is removed entirely.
|
|
|
%
|
|
|
--spec cpmap_remove(pid(), pid() | free, dict()) -> dict().
|
|
|
+-spec cpmap_remove(pid(), pid() | free, p_dict()) -> p_dict().
|
|
|
cpmap_remove(_Pid, free, CPMap) ->
|
|
|
CPMap;
|
|
|
cpmap_remove(Pid, CPid, CPMap) ->
|
|
@@ -594,18 +594,18 @@ remove_pid(Pid, Pool) ->
|
|
|
end.
|
|
|
|
|
|
-spec store_all_members(pid(),
|
|
|
- {reference(), free | pid(), {_, _, _}}, dict()) -> dict().
|
|
|
+ {reference(), free | pid(), {_, _, _}}, p_dict()) -> p_dict().
|
|
|
store_all_members(Pid, Val = {_MRef, _CPid, _Time}, AllMembers) ->
|
|
|
dict:store(Pid, Val, AllMembers).
|
|
|
|
|
|
--spec set_cpid_for_member(pid(), pid(), dict()) -> dict().
|
|
|
+-spec set_cpid_for_member(pid(), pid(), p_dict()) -> p_dict().
|
|
|
set_cpid_for_member(MemberPid, CPid, AllMembers) ->
|
|
|
dict:update(MemberPid,
|
|
|
fun({MRef, free, Time = {_, _, _}}) ->
|
|
|
{MRef, CPid, Time}
|
|
|
end, AllMembers).
|
|
|
|
|
|
--spec add_member_to_consumer(pid(), pid(), dict()) -> dict().
|
|
|
+-spec add_member_to_consumer(pid(), pid(), p_dict()) -> p_dict().
|
|
|
add_member_to_consumer(MemberPid, CPid, CPMap) ->
|
|
|
%% we can't use dict:update here because we need to create the
|
|
|
%% monitor if we aren't already tracking this consumer.
|
|
@@ -660,7 +660,7 @@ schedule_cull(PoolName, Delay) ->
|
|
|
%% automatic cancelling
|
|
|
erlang:send_after(DelayMillis, PoolName, cull_pool).
|
|
|
|
|
|
--spec member_info([pid()], dict()) -> [{pid(), member_info()}].
|
|
|
+-spec member_info([pid()], p_dict()) -> [{pid(), member_info()}].
|
|
|
member_info(Pids, AllMembers) ->
|
|
|
[ {P, dict:fetch(P, AllMembers)} || P <- Pids ].
|
|
|
|