Different between Supervisor.start_child and DynamicSupervisor.start_child

The difference between them is not on the start_child/2 function but on how they manage children. For example, because there isn’t an intrinsic ordering, the DynamicSupervisor shuts all children down concurrently, while a regular Supervisor always assume an ordering. Similarly, on restart, the DynamicSupervisor is always empty, while the regular Supervisor usually starts with a tree, etc.

6 Likes