четверг, 29 декабря 2011 г.

gen_server antipattern

Two gen_server-s should never gen_server:call each other:

  1. gen_server A calls gen_server B: it sends request message and blocks on receive.
  2. gen_server B calls gen_server A: it sends request message and blocks on receive.
  3. Neither A nor B can respond each others requests, rendering a deadlock.