作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是一个非常基本的问题,我想是的,但是我找不到任何明确的答案。 SynchronizationContext.Post()
线程安全吗?
我有一个成员变量,它保存主线程的上下文,并且从多个线程中调用_context.Post()
。我想可以在对象上同时调用Post()
。我应该做类似的事情吗
lock (_contextLock) _context.Post(myDelegate, myEventArgs);
lock()
吗?
最佳答案
严格按照MSDN文档进行操作,然后否,SynchronizationContext.Post
方法不是线程安全的。因此,除非文档中有错误,否则您将需要同步对该方法的访问。我很难相信它本身不是线程安全的,但是您不能依靠这些假设,尤其是在处理线程同步问题时。除非Microsoft更正文档或使其真正成为线程安全的,否则实际上是无法解决的。
关于.net - SynchronizationContext.Post()线程安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2859835/
我是一名优秀的程序员,十分优秀!