我最近读了很多关于这个话题的书,但我仍然需要澄清一些事情
异步方法的整个想法是线程经济:
允许许多任务在几个线程上运行。这是通过使用硬件驱动程序来完成这项工作,同时将线程释放回线程池,以便它可以为其他工作提供服务。
请注意 。
我不是在谈论与另一个线程相关联的异步委托(与调用者并行执行任务)。
但是,我已经看到了 2 种主要类型的异步方法示例:
仅使用现有I/O 异步操作的代码示例(来自书籍),
beginXXX / endXX
例如Stream.BeginRead
.
而且我找不到任何不使用现有.net I/O 操作的异步方法 示例,例如 )Stream.BeginRead
问题 :
异步方法是否 仅与 .net I/O 现有方法一起使用,例如BeginXXX , EndXXX
?
我的意思是,如果我想创建自己的 异步方法 ,例如BeginMyDelay(int ms,...){..} , EndMyDelay(...)
. 如果没有将阻塞的线程绑定到它,我就无法做到......对吗?
非常感谢你。
ps 请注意这个问题被标记为 .net 4 而不是 .net4.5