internal static void runTryCode(object userData) { ExecutionContextRunData data = (ExecutionContextRunData)userData; data.ecsw = SetExecutionContext(data.ec); data.callBack(data.state); }
static internal void runTryCode(Object userData) { ExecutionContextRunData rData = (ExecutionContextRunData)userData; rData.ecsw = SetExecutionContext(rData.ec); rData.callBack(rData.state); }
internal static void RunInternal(ExecutionContext executionContext, ContextCallback callback, object state) { if (cleanupCode == null) { tryCode = new RuntimeHelpers.TryCode(ExecutionContext.runTryCode); cleanupCode = new RuntimeHelpers.CleanupCode(ExecutionContext.runFinallyCode); } ExecutionContextRunData userData = new ExecutionContextRunData(executionContext, callback, state); RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(tryCode, cleanupCode, userData); }
internal static void RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) { if (cleanupCode == null) { tryCode = new RuntimeHelpers.TryCode(runTryCode); cleanupCode = new RuntimeHelpers.CleanupCode(runFinallyCode); } ExecutionContextRunData runData = new ExecutionContextRunData(executionContext, callback, state); RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(tryCode, cleanupCode, runData); }
static internal void runFinallyCode(Object userData, bool exceptionThrown) { ExecutionContextRunData rData = (ExecutionContextRunData)userData; rData.ecsw.Undo(); }