# Module gproc_lib # * [Description](#description) * [Function Index](#index) * [Function Details](#functions) Extended process registry. __Authors:__ Ulf Wiger ([`ulf@wiger.net`](mailto:ulf@wiger.net)). ## Description ## This module implements an extended process registry For a detailed description, see gproc/doc/erlang07-wiger.pdf. ## Function Index ##
add_monitor/4
await/3
dbg/1
decrement_resource_count/2
do_set_counter_value/3
do_set_value/3
ensure_monitor/2
followers/1
insert_attr/4
insert_many/4
insert_reg/4
insert_reg/5
monitors/1
notify/2
notify/3
remove_many/4
remove_monitor/3
remove_monitor_pid/2
remove_monitors/3
remove_reg/3
remove_reg/4
remove_reverse_mapping/3
remove_reverse_mapping/4
remove_wait/4
standbys/1
update_aggr_counter/3
update_counter/3
valid_opts/2
## Function Details ## ### add_monitor/4 ### `add_monitor(T, Pid, Ref, Type) -> any()` ### await/3 ### `await(Key, WPid, From) -> any()` ### dbg/1 ### `dbg(Mods) -> any()` ### decrement_resource_count/2 ### `decrement_resource_count(C, N) -> 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()` ### followers/1 ### `followers(Opts) -> any()` ### insert_attr/4 ### `insert_attr(Key, Attrs, Pid, Scope) -> any()` ### insert_many/4 ###

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

### insert_reg/4 ###

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

### insert_reg/5 ### `insert_reg(K, Value, Pid, Scope, Event) -> any()` ### monitors/1 ### `monitors(Opts) -> any()` ### 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_monitor_pid/2 ### `remove_monitor_pid(T, Pid) -> 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_reverse_mapping/4 ### `remove_reverse_mapping(Event, Pid, Key, Opts) -> any()` ### remove_wait/4 ### `remove_wait(Key, Pid, Ref, Waiters) -> any()` ### standbys/1 ### `standbys(Opts) -> 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()`