![]() |
1
6
是的,还有一个委托类型的BeginInvoke()方法。BackgroundWorker是最著名的例子,它被一些班级雇用。在引擎盖下只使用代理的BeginInvoke()。 I/O完成线程是一种非常低级的Windows功能,用于在I/O请求完成时让代码快速运行。从ReadFileEx()函数的最后一个参数可以看出,还有其他参数。托管等价物通过ThreadPool.BindHandle()公开。 NET类的工作就是把它做好。只有少数人使用它:FileStream、PipeStream、FileSystemWatcher、Socket、SerialPort的内部工作线程和一些WCF通道支持类。 我个人不太喜欢在API中公开这些配置细节,尤其是I/O完成线程。这有点像是被BCL的团队,一些FUD在他们这边。这些设置会影响整个程序,默认设置已经相当慷慨了。修补它们大致相当于调用GC.Collect()。如果你能找到一个很好的理由去改变它们,那最好是当你被困在地狱里,只剩下一个小时赶回家的飞机的时候。曾经去过:) |
|
Ma Joonyoung · 粗粒度和细粒度链表的时间比较 1 年前 |
![]() |
user1700890 · 了解交互式代理Python API中的线程 2 年前 |
![]() |
AntonBoarf · 为什么要将实例变量指定给局部变量? 2 年前 |
![]() |
rhymes · 如何让线程操作相同的java列表 2 年前 |