gproc_lib.md 4.2 KB

#Module gproc_lib#

Extended process registry.

Authors: Ulf Wiger (ulf.wiger@ericsson.com).

##Description##

This module implements an extended process registry

For a detailed description, see gproc/doc/erlang07-wiger.pdf.

##Function Index##

add_monitor/3
await/3
do_set_counter_value/3
do_set_value/3
ensure_monitor/2
insert_many/4
insert_reg/4
notify/2
notify/3
remove_many/4
remove_monitor/3
remove_monitors/3
remove_reg/3
remove_reg/4
remove_reverse_mapping/3
remove_wait/4
update_aggr_counter/3
update_counter/3
valid_opts/2

##Function Details##

###add_monitor/3##

add_monitor(T, Pid, Ref) -> any()

###await/3##

await(Key, WPid, From) -> any()

###do_set_counter_value/3##

do_set_counter_value(Key, Value, Pid) -> any()

###do_set_value/3##

do_set_value(Key, Value, Pid) -> any()

###ensure_monitor/2##

ensure_monitor(Pid, Scope) -> any()

###insert_many/4##

insert_many(T::type(), Scope::scope(), KVL::[{key(), any()}], Pid::pid()) -> {true, list()} | false

###insert_reg/4##

insert_reg(K::key(), Value::any(), Pid::pid() | shared, Scope::scope()) -> boolean()

###notify/2##

notify(Key, Opts) -> any()

###notify/3##

notify(Event, Key, Opts) -> any()

###remove_many/4##

remove_many(T, Scope, L, Pid) -> any()

###remove_monitor/3##

remove_monitor(T, Pid, Ref) -> any()

###remove_monitors/3##

remove_monitors(Key, Pid, MPid) -> any()

###remove_reg/3##

remove_reg(Key, Pid, Event) -> any()

###remove_reg/4##

remove_reg(Key, Pid, Event, Opts) -> any()

###remove_reverse_mapping/3##

remove_reverse_mapping(Event, Pid, Key) -> any()

###remove_wait/4##

remove_wait(Key, Pid, Ref, Waiters) -> any()

###update_aggr_counter/3##

update_aggr_counter(C, N, Val) -> any()

###update_counter/3##

update_counter(Key, Incr, Pid) -> any()

###valid_opts/2##

valid_opts(Type, Default) -> any()