- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用互斥锁来保护多个线程对某些硬件的访问,但我对 exitContext
的内容感到困惑参数意味着/做:
public virtual bool WaitOne (
int millisecondsTimeout,
bool exitContext
)
exitContext - true to exit the synchronization domain for the context before the wait (if in a synchronized context), and reacquire it afterward; otherwise, false.
最佳答案
它还解释了 further down the page under Remarks那:
Notes on Exiting the Context
The exitContext parameter has no effect unless the WaitOne method is called from inside a nondefault managed context. This can happen if your thread is inside a call to an instance of a class derived from ContextBoundObject. Even if you are currently executing a method on a class that does not derive from ContextBoundObject, like String, you can be in a nondefault context if a ContextBoundObject is on your stack in the current application domain.
When your code is executing in a nondefault context, specifying true for exitContext causes the thread to exit the nondefault managed context (that is, to transition to the default context) before executing the WaitOne method. The thread returns to the original nondefault context after the call to the WaitOne method completes.
This can be useful when the context-bound class has SynchronizationAttribute. In that case, all calls to members of the class are automatically synchronized, and the synchronization domain is the entire body of code for the class. If code in the call stack of a member calls the WaitOne method and specifies true for exitContext, the thread exits the synchronization domain, allowing a thread that is blocked on a call to any member of the object to proceed. When the WaitOne method returns, the thread that made the call must wait to reenter the synchronization domain.
关于.net - 退出上下文对于 WaitHandle.WaitOne 意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7824497/
我需要访问由两个进程共享的 Windows 8.1 应用程序中的资源:应用程序本身和后台任务,所以我需要一个命名的 Semaphore,SemaphoreSlim 确实不适用于那里,因为我在获取和发布
我有一 strip 有 waitOn 的路线返回 Meteor.subscribe 的钩子(Hook).每次触发路线时,我都会从我的 loadingTemplate 中看到微调器在看到实际数据之前简要
我有以下代码 ThreadPool.QueueUserWorkItem(new WaitCallback(DownloadAsync), apiMethod); downloadHandle.Wait
我尝试了一些线程池示例。我从Fibonacci example on MSDN web site开始,但是从this wasn't suitable for more than 64 calculat
我有一个定时器,它的回调做一些事情: 计时器: dataProcessingTimer = new System.Threading.Timer(new TimerCallback(DataProce
我有一个订阅购物车出版物的全局 waitOn。 但是,在购物车页面上,我想显示购物车中的商品列表,购物车有一个带有listingIds的对象的line_items数组。 所以我还需要订阅购物车页面上的
我有一个信号量,它应该限制为 3,但是,它只是想调用多少就调用多少。我假设这是因为我使用 (1000)。但是,当我只尝试 () 时,它永远不会通过 WaitOne,我不确定该怎么做。 private
我正在尝试创建一个 Windows 服务,该服务每 5 分钟轮询一次系统并检查需要完成的某些操作。我已经阅读了 WaitHandles 及其在该领域的实用性,但需要了解其工作原理。 见下面的代码: p
我的应用程序需要每分钟为每个租户执行一些任务。这些是一劳永逸的操作,所以我不想使用 Parallel.ForEach 来处理这个问题。 相反,我循环遍历租户列表,并触发 ThreadPool.Queu
我正在编写一个带有临界区的应用程序。 而我决定使用AutoResetEvent来实现互斥。这是代码 public class MyViewModel { private
想象一下,我有一个类,它的方法可以被多个线程访问。想象一下,该类包含一个整数“i”作为私有(private)字段,并且一些方法会增加/减少该值。 最后想象一下我的一个方法每次 i == 5 时都需要阻
在 Microsoft .NET 中,方法 WaitOne() public virtual bool WaitOne( TimeSpan timeout ) 如果当前实例收到信号,将返回true;否
static Mutex mutex = new Mutex (false, "oreilly.com OneAtATimeDemo"); static void Main() { // Wa
1)调用AsyncWaitHandle.WaitOne可能会阻塞客户端还是一定会阻塞客户端? 2)WaitAll,WaitOne,WaitAny 有什么区别? 最佳答案 WaitHandle.Wait
我对我正在使用的 ManualResetEvent 感到有点困惑,它似乎没有解锁。有人知道为什么会这样吗? 我遇到的情况与此类似。实际情况相当复杂,我没有设法隔离出一段可以合理发布以重现问题的代码。
Threaded 应该创建 4 个独立的线程并等待它们中的每一个直到它们完成。每个线程休眠一段时间,只有当共享互斥对象没有被另一个线程占用时才终止,然后通过一个事件发出它完成的信号(这是我代码的简化版
我尝试在我的 Template.rendered 中获取返回的数据功能。 目前的代码是: this.route('editCat', { layoutTemplate : 'layoutCol
我正在尝试使用互斥锁来保护多个线程对某些硬件的访问,但我对 exitContext 的内容感到困惑参数意味着/做: public virtual bool WaitOne ( int mill
我正在使用 AutoResetEvent,其中可以对一个事件进行多个 Set 调用(异常处理)。有时会调用额外的 Set,因此当代码对 WaitOne 事件进行第二次调用时,它会直接通过,因为门已经打
在此先感谢您的帮助。 我想在代码中的某个时候取消AsyncWaitHandle.WaitOne()(这意味着我不想再阻止了),但我只是找不到解决方法。也许,这是我程序的逻辑问题,但是一旦给出退出信号,
我是一名优秀的程序员,十分优秀!