• C# 调用线程并行上下文穿透-ILogicalThreadAffinative+CallContext


    na


    mespace System.Runtime.Remoting.Messaging { /// <summary>Provides a set of properties that are carried with the execution code path. This class cannot be inherited.</summary> // Token: 0x0200085D RID: 2141 [SecurityCritical] [ComVisible(true)] [Serializable] public sealed class CallContext /// <summary>Stores a given object and associates it with the specified name.</summary> /// <param name="name">The name with which to associate the new item in the call context. </param> /// <param name="data">The object to store in the call context. </param> /// <exception cref="T:System.Security.SecurityException">The immediate caller does not have infrastructure permission. </exception> // Token: 0x06005B36 RID: 23350 RVA: 0x0013EAFC File Offset: 0x0013CCFC [SecurityCritical] public static void SetData(string name, object data) { if (data is ILogicalThreadAffinative) { CallContext.LogicalSetData(name, data); return; } ExecutionContext mutableExecutionContext = Thread.CurrentThread.GetMutableExecutionContext(); mutableExecutionContext.LogicalCallContext.FreeNamedDataSlot(name); mutableExecutionContext.IllogicalCallContext.SetData(name, data); } /// <summary>Stores a given object in the logical call context and associates it with the specified name.</summary> /// <param name="name">The name with which to associate the new item in the logical call context. </param> /// <param name="data">The object to store in the logical call context, this object must be serializable. </param> /// <exception cref="T:System.Security.SecurityException">The immediate caller does not have infrastructure permission. </exception> // Token: 0x06005B37 RID: 23351 RVA: 0x0013EB40 File Offset: 0x0013CD40 [SecurityCritical] public static void LogicalSetData(string name, object data) { ExecutionContext mutableExecutionContext = Thread.CurrentThread.GetMutableExecutionContext(); mutableExecutionContext.IllogicalCallContext.FreeNamedDataSlot(name); mutableExecutionContext.LogicalCallContext.SetData(name, data); }

      

  • 相关阅读:
    论文尾注后无法插入分节符
    实现java对象排序的三种方式
    java数组的定义方式
    Canvas
    正则xss
    mongoDB学习记录
    查找,学习,记录
    地址
    node实战学习纪录
    nodejs学习记录
  • 原文地址:https://www.cnblogs.com/micro-chen/p/10297503.html
Copyright © 2020-2023  润新知