Mercurial > pub > ImplabNet
view Implab/Diagnostics/Extensions.cs @ 100:673947ce458a v2
added multithreading support to Disposable class
author | cin |
---|---|
date | Wed, 05 Nov 2014 16:39:56 +0300 |
parents | a43745f81f10 |
children | 1b7ebcc52e5a |
line wrap: on
line source
namespace Implab.Diagnostics { public static class Extensions { public static IPromise<T> EndLogicalOperation<T>(this IPromise<T> promise) { Safe.ArgumentNotNull(promise, "promise"); var op = TraceContext.Instance.DetachLogicalOperation(); return promise.Anyway(() => { TraceContext.Instance.EnterLogicalOperation(op,true); TraceLog.EndLogicalOperation(); TraceContext.Instance.Leave(); }); } public static IPromise EndLogicalOperation(this IPromise promise) { Safe.ArgumentNotNull(promise, "promise"); var op = TraceContext.Instance.DetachLogicalOperation(); return promise.Anyway(() => { TraceContext.Instance.EnterLogicalOperation(op,true); TraceLog.EndLogicalOperation(); TraceContext.Instance.Leave(); }); } } }