[erlang-questions] How to solve the blocking accept call in a tcp_listener process ?

James Hague <>
Tue May 19 17:35:37 CEST 2009

> Many examples uses the async_accept primitive from the module prim_inet.
> This primitive is not documented (low level) and might change or dissapear.
> Do you know examples which don't use it but use a "clean" solution for the blocking accept call ?
> Or could you show an elegant solution in this forum ?

You could always put the blocking call into it's own process.  When a
connection occurs, change the port's owner and send the port in a
message.  (And open the port in passive mode to make sure messages
aren't received before switching the owner.)

More information about the erlang-questions mailing list