- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
是否有必要锁定多个线程通过调度程序访问同一 wpf 组件的代码片段?
例子:
void ladder_OnIndexCompleted(object sender, EventArgs args)
{
lock (locker)
{
pbLadder.Dispatcher.Invoke(new Action(() => { pbLadder.Value++; }));
}
}
pbLadder
是一个进度条,可以同时从多个线程引发此事件。
最佳答案
如果您要以同步方式编码到另一个线程,则不应获取锁 - 否则,如果您尝试在另一个线程(本例中为调度程序线程)中获取相同的锁,您最终会得到一个僵局。
如果 pbLadder.Value
仅在 UI 线程中使用,那么您无需担心线程安全性锁定 - 所有操作都发生在同一个线程上的事实使您与许多正常的多线程问题隔离开来。事实上,导致代码使用 pbLadder.Value
的原始操作在不同的线程上执行是无关紧要的。
关于wpf - 锁定调度员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8623927/
我一直在阅读文档,但我不太清楚是否只有一个 Dispatcher 与每个 actor 关联,或者是否只有一个。假设我有 Actor SendSmsActor 和 Actor UpdateSmsActo
我有一个如下的用例: 假设我有一个 enumType Foo (可能的值 A、B、C)。假设我有 Class Bar{ List foos; // list of Foo objects where
在阅读了 Dispatcher 类的文档后,我意识到它也可以用于非 UI 的操作队列。 那么 Dispatcher 类实际上是如何工作的呢?我知道,它的主要工作是将操作排队到特定线程 - 但它如何将这
我知道我可以为授权用户通过 调用的页面激活缓存 /allowAuthorized "1" 在 /cache 部分。 但是,如果一个页面被缓存,它将被传递给所有调用它的人,甚至是匿名用户。我能否以某种方
我正在尝试使用标准的 scala.actors 包为 Scala 设计一个调度员- worker 角色模式。 调度员从 java.util.concurrent.LinkedBlockingQueue
我是一名优秀的程序员,十分优秀!