How is the receive message implemented internally in erlang runtime?
When the process is waiting for a message, the execution hang on the receive. The receive is done via blocking IO, or asynchronous IO ?
If former, then it means the OS thread is blocked and if there are many process hang on receiving, the performance is bad in reason of thread context switch and also may reach the operation system's thread limitation.