blob: 3e8b62e4f86e477024babed5e73c2f38a1709444 (
plain) (
tree)
|
|
ranch_protocol
==============
The `ranch_protocol` behaviour defines the interface used
by Ranch protocols.
Types
-----
None.
Callbacks
---------
### start_link(Ref, Socket, Transport, ProtoOpts) -> {ok, pid()}
> Types:
> * Ref = ranch:ref()
> * Socket = any()
> * Transport = module()
> * ProtoOpts = any()
>
> Start a new connection process for the given socket.
>
> The only purpose of this callback is to start a process that
> will handle the socket. It must spawn the process, link and
> then return the new pid. This function will always be called
> from inside a supervisor.
>
> If any other value is returned, the supervisor will close the
> socket and assume no process has been started.
>
> Do not perform any operation in this callback, as this would
> block the supervisor responsible for starting connection
> processes and degrade performance severely.
|