multiverses v0.5.2 Multiverses.DynamicSupervisor View Source

This module is intended to be a drop-in replacement for DynamicSupervisor.

It launches the supervised process during a slice of time in which the universe of the DynamicSupervisor is temporarily set to the universe of its caller. For example, if the supervised process is Multiverses.GenServer, with start_link option forward_callers: true, then the GenServer will exist in the same universe as its caller.

Currently uses DynamicSupervisor private API, so forward compatibility is not guaranteed.

Usage

This module should only be used at the point of starting a child under the supervisor. All other uses of DynamicSupervisor (such as use DynamicSupervisor) should use the native Elixir DynamicSupervisor module, and the supervisor is fully compatible with native DynamicSupervisor processes.

Notes

currently, only start_child/2 is overloaded to provide sharded information. count_children/1, terminate_child/2 and which_children/1 will act on the global information. If you need access to partitioned collections of processes, use Multiverse.Registry.

Link to this section Summary

Link to this section Functions

Link to this macro

%Multiverses.DynamicSupervisor{}

View Source (macro)

cloned from DynamicSupervisor.__struct__/0

Link to this macro

__struct__(p1)

View Source (macro)

cloned from DynamicSupervisor.__struct__/1

Link to this macro

child_spec(p1)

View Source (macro)

cloned from DynamicSupervisor.child_spec/1

Link to this macro

code_change(p1, p2, p3)

View Source (macro)

cloned from DynamicSupervisor.code_change/3

Link to this macro

count_children(p1)

View Source (macro)

cloned from DynamicSupervisor.count_children/1

Link to this macro

format_report(p1)

View Source (macro)

cloned from DynamicSupervisor.format_report/1

Link to this macro

format_status(p1, p2)

View Source (macro)

cloned from DynamicSupervisor.format_status/2

Link to this macro

handle_call(p1, p2, p3)

View Source (macro)

cloned from DynamicSupervisor.handle_call/3

Link to this macro

handle_cast(p1, p2)

View Source (macro)

cloned from DynamicSupervisor.handle_cast/2

Link to this macro

handle_info(p1, p2)

View Source (macro)

cloned from DynamicSupervisor.handle_info/2

cloned from DynamicSupervisor.init/1

Link to this macro

start_child(supervisor, spec)

View Source (macro)
Link to this macro

start_link(p1)

View Source (macro)

cloned from DynamicSupervisor.start_link/1

Link to this macro

start_link(p1, p2)

View Source (macro)

cloned from DynamicSupervisor.start_link/2

Link to this macro

start_link(p1, p2, p3)

View Source (macro)

cloned from DynamicSupervisor.start_link/3

cloned from DynamicSupervisor.stop/1

cloned from DynamicSupervisor.stop/2

Link to this macro

stop(p1, p2, p3)

View Source (macro)

cloned from DynamicSupervisor.stop/3

Link to this macro

terminate(p1, p2)

View Source (macro)

cloned from DynamicSupervisor.terminate/2

Link to this macro

terminate_child(p1, p2)

View Source (macro)

cloned from DynamicSupervisor.terminate_child/2

Link to this macro

which_children(p1)

View Source (macro)

cloned from DynamicSupervisor.which_children/1