Nik*_*laj 1 .net c# io async-await
我需要使用一个提供对自己数据库的访问的库.不幸的是,所有方法都是经典同步.我宁愿有async方法来卸载IO负载,就像我们已经说过的SQL Server一样.
我知道这是一个非常通用的问题,没有太多具体信息.有没有办法移动到那一点,还是太糟糕了?
非常感谢示例和/或链接.
如果您正在使用的库中存在某种形式的异步API,则可以使用它来制作asyncAPI TaskCompletionSource<T>.它可以是BeginX/ EndX,DoX有XCompleted事件或任何其他形式.
如果没有这样的东西,你根本无法创建真正的异步重载.您可以将这些同步调用卸载到ThreadPool线程使用,Task.Run但这只会有助于响应,而不是以任何方式提高性能.