首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否需要防线程标志?

是否需要防线程标志?
EN

Stack Overflow用户
提问于 2011-10-18 12:19:13
回答 1查看 102关注 0票数 0

我在和线一起工作。我不确定是否需要ThreadStatic标志。无论如何,在任何线程中,都可以访问简单类型的布尔值。

当在几个线程上工作时,应该是:

代码语言:javascript
复制
Private _ImageToggle As Boolean

代码语言:javascript
复制
 <ThreadStatic()> Private _ImageToggle As Boolean

*我对Marc的解释答案*

如果每个实例都使用多线程,则"Threadstatic“标志可以是使用共享值的解决方案。就我现在所理解的基本类型而言,这是没有意义的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-18 12:21:42

因为它不是static (VB中的Shared),所以[ThreadStatic]没有效果。不,它不需要这个。

当应用于静态字段时,[ThreadStatic]意味着每个线程都在与不同的值对话(本质上它成为线程本地存储)。这是双刃剑,因为任何基于异步的代码(包括ASP.NET和WCF)都需要非常小心。通常,我会避免使用这个标志--最好使用一个实例成员,并将它(在线程之间)作为上下文传递。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7807089

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档