首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在WaitHandle上设置事件

在WaitHandle上设置事件
EN

Stack Overflow用户
提问于 2016-02-25 20:41:46
回答 1查看 346关注 0票数 0

System.Threading.Timer类有一个Dispose重写,它接受一个WaitHandle。这个想法是,一旦所有计时器回调完成,它就会设置等待句柄,你就知道可以安全地关闭它了。

不幸的是,WaitHandle类上没有用于设置事件的方法。通过查看源代码,它实际使用来自Kernal32的导入来设置事件。

有没有框架友好的方法来设置WaitHandle?所有的例子都使用了一个特定的WaitHandle实现,它已经有了一个set方法。看起来有点荒唐,基类上没有Set或类似的东西。它存在于比它低一级的EventWaitHandle上。

EN

回答 1

Stack Overflow用户

发布于 2016-02-25 22:48:01

我允许在我的方法上使用EventWaitHandle作为基类型,这允许我发出关闭完成的信号。

现代的方法是公开一个Task,当你想发出信号时,这个a就会完成。不需要句柄(在.NET中几乎已经过时了),也不需要传递任何在架构上很笨拙的东西。

Task类似于一个事件,但更好,更轻量级。

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

https://stackoverflow.com/questions/35627651

复制
相关文章

相似问题

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