use*_*298 2 .net multithreading scope named-scope transactionscope
有没有办法做到这一点(psedo代码):
GetCurrentThread().Items.Add(new RefObject);
Run Code Online (Sandbox Code Playgroud)
然后再回顾它
RefObject[] refObjs = GetCurrentThread().Items;
Run Code Online (Sandbox Code Playgroud)
并枚举对象.显然,这两个调用都会在它的生命周期内发生在同一个线程上.
基本的想法是,我可以轻松识别当前线程的项目,并且它们实际上是在此线程中创建的.它与将Page.Request对象用于ASP.NET请求相同 - 您知道它在工作进程中非常独特,因此它不会与同时提供的其他请求混淆.我想对待一个线程Page.Request- 它来然后去,但是当它还活着时,我可以随意查询它而不关心过程中存在的其他威胁.
一旦我做了类似的事情,但它更多的是通过引用编组对象的模拟.我可以想到几种方法,但我真的不想自己手动存储线程和对象之间的映射.对于.NET中的线程,是不是有类似于TransactionScope的东西?我不太喜欢处理同步困难和避免竞争条件.
PS:如果没有,我是否可以至少为没有静态变量的应用程序域做到这一点?
| 归档时间: |
|
| 查看次数: |
114 次 |
| 最近记录: |