multiverses v0.7.0 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

See DynamicSupervisor.child_spec/1.

See DynamicSupervisor.code_change/3.

See DynamicSupervisor.count_children/1.

See DynamicSupervisor.format_report/1.

See DynamicSupervisor.format_status/2.

See DynamicSupervisor.handle_call/3.

See DynamicSupervisor.handle_cast/2.

See DynamicSupervisor.handle_info/2.

See DynamicSupervisor.init/1.

Link to this function

start_child(supervisor, spec)

View Source

See DynamicSupervisor.start_child/2.

See DynamicSupervisor.start_link/1.

See DynamicSupervisor.start_link/2.

See DynamicSupervisor.start_link/3.

See DynamicSupervisor.stop/1.

See DynamicSupervisor.stop/2.

See DynamicSupervisor.stop/3.

See DynamicSupervisor.terminate/2.

See DynamicSupervisor.terminate_child/2.

See DynamicSupervisor.which_children/1.