Wojket Gawronski's post here, neatly summarises the issues with GenEvent. Fortunately there are alternatives including gproc, phoenix_pubsub, and Elixir's upcoming Process registry. The code used in these examples is available from this repository. gproc While gproc's main purpose is as a process registry, it can be used as pub/sub framework using a lovely trick. defmodule PubsubSpike.Gproc do use