提高服务器应用程序可扩展性的一种方法是异步运行 IO 绑定操作(读取文件、套接字、Web 请求、数据库请求等)。这并不意味着在 ThreadPool 中运行它们,这只会在执行操作时阻塞线程。正确的方法是使用异步 API(BeginRead、BeginGetResponse、BeginExecuteReader 等)。CLR vi C#书中很好地描述了这个问题。
这是一些关于Linq to SQL 中的异步查询的文章。
有什么方法可以异步执行 Nhibernate 查询吗?Linq 到 NHibernate 怎么样?
谢谢你,安德烈