-Async cleanup

This commit is contained in:
James Newton-King
2017-09-03 10:43:14 +12:00
parent 87d9010a20
commit fe2ec84c18
3 changed files with 9 additions and 27 deletions
+4 -4
View File
@@ -1138,7 +1138,7 @@ namespace Newtonsoft.Json
switch (_currentState)
{
case State.PostValue:
if (await ParsePostValueAsync(true, cancellationToken))
if (await ParsePostValueAsync(true, cancellationToken).ConfigureAwait(false))
{
return null;
}
@@ -1273,7 +1273,7 @@ namespace Newtonsoft.Json
switch (_currentState)
{
case State.PostValue:
if (await ParsePostValueAsync(true, cancellationToken))
if (await ParsePostValueAsync(true, cancellationToken).ConfigureAwait(false))
{
return null;
}
@@ -1399,7 +1399,7 @@ namespace Newtonsoft.Json
switch (_currentState)
{
case State.PostValue:
if (await ParsePostValueAsync(true, cancellationToken))
if (await ParsePostValueAsync(true, cancellationToken).ConfigureAwait(false))
{
return null;
}
@@ -1535,7 +1535,7 @@ namespace Newtonsoft.Json
switch (_currentState)
{
case State.PostValue:
if (await ParsePostValueAsync(true, cancellationToken))
if (await ParsePostValueAsync(true, cancellationToken).ConfigureAwait(false))
{
return null;
}
+3 -3
View File
@@ -323,7 +323,7 @@ namespace Newtonsoft.Json
// Local functions, params renamed (capitalized) so as not to capture and allocate when calling async
async Task AwaitProperty(Task task, int LevelsToComplete, JsonToken token, JsonContainerType Type, CancellationToken CancellationToken)
{
await task;
await task.ConfigureAwait(false);
// Finish current loop
if (_formatting == Formatting.Indented)
@@ -343,7 +343,7 @@ namespace Newtonsoft.Json
async Task AwaitIndent(Task task, int LevelsToComplete, JsonToken token, JsonContainerType Type, CancellationToken CancellationToken)
{
await task;
await task.ConfigureAwait(false);
// Finish current loop
@@ -356,7 +356,7 @@ namespace Newtonsoft.Json
async Task AwaitEnd(Task task, int LevelsToComplete, JsonContainerType Type, CancellationToken CancellationToken)
{
await task;
await task.ConfigureAwait(false);
// Finish current loop
+2 -20
View File
@@ -47,7 +47,7 @@ namespace Newtonsoft.Json.Linq
var t = writer.WriteStartObjectAsync(cancellationToken);
if (!t.IsCompletedSucessfully())
{
return AwaitStartObject(t, writer, cancellationToken, converters);
return AwaitProperties(t, 0, writer, cancellationToken, converters);
}
for (int i = 0; i < _properties.Count; i++)
@@ -59,22 +59,9 @@ namespace Newtonsoft.Json.Linq
}
}
t = writer.WriteEndObjectAsync(cancellationToken);
return (t.IsCompletedSucessfully()) ? AsyncUtils.CompletedTask : AwaitEndObject(t);
return writer.WriteEndObjectAsync(cancellationToken);
// Local functions, params renamed (capitalized) so as not to capture and allocate when calling async
async Task AwaitStartObject(Task task, JsonWriter Writer, CancellationToken CancellationToken, JsonConverter[] Converters)
{
await task.ConfigureAwait(false);
for (int i = 0; i < _properties.Count; i++)
{
await _properties[i].WriteToAsync(Writer, CancellationToken, Converters).ConfigureAwait(false);
}
await Writer.WriteEndObjectAsync(CancellationToken).ConfigureAwait(false);
}
async Task AwaitProperties(Task task, int i, JsonWriter Writer, CancellationToken CancellationToken, JsonConverter[] Converters)
{
await task.ConfigureAwait(false);
@@ -85,11 +72,6 @@ namespace Newtonsoft.Json.Linq
await Writer.WriteEndObjectAsync(CancellationToken).ConfigureAwait(false);
}
async Task AwaitEndObject(Task task)
{
await task.ConfigureAwait(false);
}
}
/// <summary>