# Module supool

- Description
- Data Types
- Function Index
- Function Details

### Supervisor Pool

Simple supervisor process pool with round-robin.

Copyright © 2011-2021 Michael Truog

Version: 2.0.2 May 26 2021 19:26:39 ------------------------------------------------------------------------

Behaviours: `gen_server`.

Authors: Michael Truog (`mjtruog at protonmail dot com`).

## Description

### Supervisor Pool

Simple supervisor process pool with round-robin.

## Data Types

### child_spec()

`child_spec() = {Id::any(), StartFunc::{module(), atom(), list()}, Restart::permanent | transient | temporary, Shutdown::brutal_kill | pos_integer(), Type::worker | supervisor, Modules::[module()] | dynamic}`

### options()

`options() = [{max_r, non_neg_integer()} | {max_t, pos_integer()}]`

## Function Index

code_change/3 |
get/1 | #### Get a pool process. .
handle_call/3 |
handle_cast/2 |
handle_info/2 |
init/1 |
pool_worker_start_link/2 |
start_link/3 | #### Start the pool supervisor. .
start_link/4 | #### Start the pool supervisor with restart options. .
terminate/2 |

## Function Details

### code_change/3

`code_change(X1, State, X3) -> any()`

### get/1

`get(Name::atom()) -> pid() | undefined`

#### Get a pool process.

### handle_call/3

`handle_call(Request, X2, State) -> any()`

### handle_cast/2

`handle_cast(Request, State) -> any()`

### handle_info/2

`handle_info(Request, State) -> any()`

### init/1

`init(X1) -> any()`

### pool_worker_start_link/2

`pool_worker_start_link(Name::atom(), Supervisor::pid()) -> {ok, pid()} | {error, any()}`

### start_link/3

`start_link(Name::atom(), Count::pos_integer(), ChildSpec::child_spec()) -> {ok, pid()} | {error, any()}`

#### Start the pool supervisor.

### start_link/4

`start_link(Name::atom(), Count::pos_integer(), ChildSpec::child_spec(), Options::options()) -> {ok, pid()} | {error, any()}`

#### Start the pool supervisor with restart options.

### terminate/2

`terminate(X1, X2) -> any()`

Generated by EDoc