Index: src/log4net.Tests/Context/LogicalThreadContextTest.cs =================================================================== --- src/log4net.Tests/Context/LogicalThreadContextTest.cs (revision 1710414) +++ src/log4net.Tests/Context/LogicalThreadContextTest.cs (working copy) @@ -17,7 +17,7 @@ // #endregion -#if FRAMEWORK_4_5_OR_ABOVE +#if HAS_ASYNC_AWAIT using System; using System.Threading.Tasks; using System.Linq; Index: src/log4net.Tests/log4net.Tests.vs2010.csproj =================================================================== --- src/log4net.Tests/log4net.Tests.vs2010.csproj (revision 1710414) +++ src/log4net.Tests/log4net.Tests.vs2010.csproj (working copy) @@ -72,7 +72,7 @@ false - TRACE;DEBUG;DOTNET;FRAMEWORK_3_5_OR_ABOVE;FRAMEWORK_4_0_OR_ABOVE + TRACE;DEBUG;DOTNET;FRAMEWORK_3_5_OR_ABOVE;FRAMEWORK_4_0_OR_ABOVE;HAS_TPL true Index: src/log4net.Tests/log4net.Tests.vs2012.csproj =================================================================== --- src/log4net.Tests/log4net.Tests.vs2012.csproj (revision 1710414) +++ src/log4net.Tests/log4net.Tests.vs2012.csproj (working copy) @@ -72,7 +72,7 @@ false - TRACE;DEBUG;DOTNET;FRAMEWORK_3_5_OR_ABOVE;FRAMEWORK_4_0_OR_ABOVE;FRAMEWORK_4_5_OR_ABOVE + TRACE;DEBUG;DOTNET;FRAMEWORK_3_5_OR_ABOVE;FRAMEWORK_4_0_OR_ABOVE;FRAMEWORK_4_5_OR_ABOVE;HAS_TPL;HAS_ASYNC_AWAIT true Index: src/log4net/Appender/AsyncAppender.cs =================================================================== --- src/log4net/Appender/AsyncAppender.cs (revision 1710414) +++ src/log4net/Appender/AsyncAppender.cs (working copy) @@ -19,7 +19,7 @@ using System; using System.Collections.Generic; -#if FRAMEWORK_4_0_OR_ABOVE +#if HAS_TPL using System.Threading.Tasks; #else using System.Threading; @@ -46,7 +46,7 @@ /// public AsyncAppender() { -#if FRAMEWORK_4_0_OR_ABOVE +#if HAS_TPL logTask = new Task(() => { }); logTask.Start(); #endif @@ -92,7 +92,7 @@ } events.Add(loggingEvent); } -#if FRAMEWORK_4_0_OR_ABOVE +#if HAS_TPL logTask.ContinueWith(AsyncAppend); #else ThreadPool.QueueUserWorkItem(AsyncAppend, null); @@ -122,7 +122,7 @@ } events.AddRange(loggingEvents); } -#if FRAMEWORK_4_0_OR_ABOVE +#if HAS_TPL logTask.ContinueWith(AsyncAppend); #else ThreadPool.QueueUserWorkItem(AsyncAppend, null); @@ -145,7 +145,7 @@ { lock (lockObject) { -#if FRAMEWORK_4_0_OR_ABOVE +#if HAS_TPL if (!closed) { logTask.Wait(); @@ -158,7 +158,7 @@ private void AsyncAppend(object _ignored) { -#if FRAMEWORK_4_0_OR_ABOVE // ContinueWith already ensures there is only one thread executing this method at a time +#if HAS_TPL // ContinueWith already ensures there is only one thread executing this method at a time ForwardEvents(); #else lock (lockObject) @@ -213,7 +213,7 @@ private readonly object lockObject = new object(); private readonly List events = new List(); private bool closed = false; -#if FRAMEWORK_4_0_OR_ABOVE +#if HAS_TPL private readonly Task logTask; #else private bool inLoggingLoop = false;