问题描述
|
上下文在域内为有特殊需要的对象创建细分的“容器”(或在没有特殊需要的对象的情况下,使用默认上下文)。
我很难理解ExecutionContext类如何与这些上下文相关。
它们是如何关联或不同的?
解决方法
“ 0”是一个容器,用于存储与线程执行有关的信息。因此,这几乎只是一个特殊的上下文。它具有一些简洁的属性,但是它们可能不适用于其他类型的上下文,这可以,因为不同的上下文可以有不同的用途。
从MSDN:
ExecutionContext类提供了一个
单个容器提供所有信息
与逻辑线程有关
执行。这包括安全性
上下文,调用上下文和
同步上下文。
ExecutionContext类提供
用户代码的功能
捕获并传递此上下文
跨用户定义的异步
点。公共语言运行时
确保ExecutionContext是
持续转移
运行时定义的异步点
在托管过程中。
执行上下文是托管的
相当于COM公寓。中
一个应用程序域,整个
执行上下文必须转移
每当传输线程时。这个
转移过程中出现这种情况
通过Thread.Start方法,大多数
线程池操作和Windows
表单中的线程封送处理
Windows消息泵。它不是
发生在不安全的线程池操作中
(例如UnsafeQueueUserWorkItem
方法),而不会转移
压缩堆栈。
您可以在上面的链接中找到有关ExecutionContext的更多信息。