【发布时间】:2011-04-20 05:06:41
【问题描述】:
上下文在域内为有特殊需要的对象创建细分的“容器”(或者在没有特殊需要的对象的情况下,使用默认上下文)。
我无法理解 ExecutionContext 类与这些上下文的关系。
它们有什么关系或不同等?
【问题讨论】:
标签: .net executioncontext
上下文在域内为有特殊需要的对象创建细分的“容器”(或者在没有特殊需要的对象的情况下,使用默认上下文)。
我无法理解 ExecutionContext 类与这些上下文的关系。
它们有什么关系或不同等?
【问题讨论】:
标签: .net executioncontext
ExecutionContext 是与线程执行相关的信息的容器。所以它几乎只是一个专门的上下文。它有一些简洁的属性,但它们可能不适用于其他类型的上下文,这没关系,因为不同的上下文可以有不同的用途。
来自MSDN:
ExecutionContext 类提供了一个 所有信息的单一容器 相关的逻辑线程 执行。这包括安全 上下文、调用上下文和 同步上下文。
ExecutionContext 类提供 用户代码的功能 捕获并传输此上下文 跨用户定义的异步 点。公共语言运行时 确保 ExecutionContext 是 不断地转移 运行时定义的异步点 在托管进程中。
执行上下文是托管的 相当于 COM 公寓。内 一个应用程序域,整个 必须转移执行上下文 每当一个线程被转移。这个 转移过程中发生的情况 通过 Thread.Start 方法,大多数 线程池操作和 Windows 表单线程编组通过 Windows 消息泵。它不是 发生在不安全的线程池操作中 (例如 UnsafeQueueUserWorkItem 方法),其中不转移 压缩堆栈。
您可以在上面的链接中找到有关 ExecutionContext 的更多信息。
【讨论】: