Though I did not test this thoroughly, I observed the following behaviour:
1. A process calls
2. Crash or terminate the process
3. Spawn the process again with same configuration, that is, listen on the same port
4. The process fails to listen on the port with reason
Using inet:i/0 before the 2nd step can find the socket. After the 2nd step inet:i/0 can still find it. Therefore I think the listen socket is not closed with the termination/crash of the process that opens it. This behaviour is not observed with TLS socket.