Monthly Archives: September 2018

OTP 21 introduces handle_continue callback to GenServer

When using GenServers, it is sometimes necessary to perform long-running code during the initialization. The common pattern for handling this is to send a message to self() from within the init callback, and then perform the long-running work within the handle_info function for … Continue reading

Posted in Elixir | Comments Off on OTP 21 introduces handle_continue callback to GenServer

PoolToy: A (toy) process pool manager in Elixir 1.6 (part 2.3)

Starting pools (This post is part of a series on writing a process pool manager in Elixir.) Previously, we got pretty excited about the possibility of starting multiple pools, only to have our dreams crushed by bleak reality. Here’s a … Continue reading

Posted in Elixir | Comments Off on PoolToy: A (toy) process pool manager in Elixir 1.6 (part 2.3)

PoolToy: A (toy) process pool manager in Elixir 1.6 (part 2.2)

Implementing multiple pools (This post is part of a series on writing a process pool manager in Elixir.) In the last post, we did  most of the work enabling us to have multiple pools within PoolToy. But before we jump … Continue reading

Posted in Elixir | Comments Off on PoolToy: A (toy) process pool manager in Elixir 1.6 (part 2.2)

PoolToy: A (toy) process pool manager in Elixir 1.6 (part 2.1)

Preparing for multiple pools (This post is part of a series on writing a process pool manager in Elixir.) When we left each other after last post, we had a working single pool that looked something like this: The thing … Continue reading

Posted in Elixir | Comments Off on PoolToy: A (toy) process pool manager in Elixir 1.6 (part 2.1)