diff options
author | Loïc Hoguin <[email protected]> | 2013-01-15 17:49:30 +0100 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2013-01-15 17:49:30 +0100 |
commit | 0a101a324da969e51395d21e2782095a433b2084 (patch) | |
tree | 801eca39f793f985e747a92bde3ff3cb50a313e9 /src/ranch_acceptor.erl | |
parent | 56d75d4c03bd6eb0f7c89806b310a9c38022b6fd (diff) | |
parent | 662d94a531178af005f06b0bfb4a8660b0fa023f (diff) | |
download | ranch-0a101a324da969e51395d21e2782095a433b2084.tar.gz ranch-0a101a324da969e51395d21e2782095a433b2084.tar.bz2 ranch-0a101a324da969e51395d21e2782095a433b2084.zip |
Merge branch 'optimise-conn-count' of https://github.com/ferd/ranch
Diffstat (limited to 'src/ranch_acceptor.erl')
-rw-r--r-- | src/ranch_acceptor.erl | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/ranch_acceptor.erl b/src/ranch_acceptor.erl index aef98d7..63d24c8 100644 --- a/src/ranch_acceptor.erl +++ b/src/ranch_acceptor.erl @@ -56,8 +56,13 @@ loop(LSocket, Transport, Protocol, MaxConns, Opts, ListenerPid, ConnsSup) -> [ListenerPid, CSocket, Transport, Protocol, Opts]), Transport:controlling_process(CSocket, ConnPid), ConnPid ! {shoot, ListenerPid}, - NbConns = ranch_listener:add_connection(ListenerPid, ConnPid), - {ok, MaxConns2} = maybe_wait(ListenerPid, MaxConns, NbConns), + {ok, MaxConns2} = case MaxConns of + infinity -> + {ok, infinity}; + _ -> + NbConns = ranch_listener:add_connection(ListenerPid, ConnPid), + maybe_wait(ListenerPid, MaxConns, NbConns) + end, ?MODULE:init(LSocket, Transport, Protocol, MaxConns2, Opts, ListenerPid, ConnsSup); %% Upgrade the max number of connections allowed concurrently. |