Merge branch 'release' into dev
This commit is contained in:
commit
fe654598f6
|
|
@ -31,6 +31,7 @@ namespace Microsoft.AspNet.Server.Kestrel.Http
|
||||||
private readonly object _onStartingSync = new Object();
|
private readonly object _onStartingSync = new Object();
|
||||||
private readonly object _onCompletedSync = new Object();
|
private readonly object _onCompletedSync = new Object();
|
||||||
private readonly FrameRequestHeaders _requestHeaders = new FrameRequestHeaders();
|
private readonly FrameRequestHeaders _requestHeaders = new FrameRequestHeaders();
|
||||||
|
private readonly byte[] _nullBuffer = new byte[4096];
|
||||||
private readonly FrameResponseHeaders _responseHeaders = new FrameResponseHeaders();
|
private readonly FrameResponseHeaders _responseHeaders = new FrameResponseHeaders();
|
||||||
|
|
||||||
private List<KeyValuePair<Func<object, Task>, object>> _onStarting;
|
private List<KeyValuePair<Func<object, Task>, object>> _onStarting;
|
||||||
|
|
@ -228,8 +229,10 @@ namespace Microsoft.AspNet.Server.Kestrel.Http
|
||||||
|
|
||||||
await ProduceEnd();
|
await ProduceEnd();
|
||||||
|
|
||||||
// Finish reading the request body in case the app did not.
|
while (await RequestBody.ReadAsync(_nullBuffer, 0, _nullBuffer.Length) != 0)
|
||||||
await RequestBody.CopyToAsync(Stream.Null);
|
{
|
||||||
|
// Finish reading the request body in case the app did not.
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
terminated = !_keepAlive;
|
terminated = !_keepAlive;
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,7 @@ namespace Microsoft.AspNet.Server.Kestrel
|
||||||
private Queue<CloseHandle> _closeHandleRunning = new Queue<CloseHandle>();
|
private Queue<CloseHandle> _closeHandleRunning = new Queue<CloseHandle>();
|
||||||
private object _workSync = new Object();
|
private object _workSync = new Object();
|
||||||
private bool _stopImmediate = false;
|
private bool _stopImmediate = false;
|
||||||
|
private bool _initCompleted = false;
|
||||||
private ExceptionDispatchInfo _closeError;
|
private ExceptionDispatchInfo _closeError;
|
||||||
private IKestrelTrace _log;
|
private IKestrelTrace _log;
|
||||||
|
|
||||||
|
|
@ -58,6 +59,11 @@ namespace Microsoft.AspNet.Server.Kestrel
|
||||||
|
|
||||||
public void Stop(TimeSpan timeout)
|
public void Stop(TimeSpan timeout)
|
||||||
{
|
{
|
||||||
|
if (!_initCompleted)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
Post(OnStop, null);
|
Post(OnStop, null);
|
||||||
if (!_thread.Join((int)timeout.TotalMilliseconds))
|
if (!_thread.Join((int)timeout.TotalMilliseconds))
|
||||||
{
|
{
|
||||||
|
|
@ -195,8 +201,11 @@ namespace Microsoft.AspNet.Server.Kestrel
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
tcs.SetException(ex);
|
tcs.SetException(ex);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_initCompleted = true;
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var ran1 = _loop.Run();
|
var ran1 = _loop.Run();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue