narrow lock scope when connections end

This commit is contained in:
Nathan Anderson 2016-05-04 16:50:08 -07:00
parent fed7c44829
commit 132263e767
1 changed files with 13 additions and 13 deletions

View File

@ -327,8 +327,6 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Http
} }
void IConnectionControl.End(ProduceEndType endType) void IConnectionControl.End(ProduceEndType endType)
{
lock (_stateLock)
{ {
switch (endType) switch (endType)
{ {
@ -342,6 +340,8 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Http
break; break;
case ProduceEndType.SocketShutdown: case ProduceEndType.SocketShutdown:
case ProduceEndType.SocketDisconnect: case ProduceEndType.SocketDisconnect:
lock (_stateLock)
{
if (_connectionState == ConnectionState.Disconnecting || if (_connectionState == ConnectionState.Disconnecting ||
_connectionState == ConnectionState.SocketClosed) _connectionState == ConnectionState.SocketClosed)
{ {