服务器性能 - 数据库访问查询结果:List<> 或 IEnumerable<>?
Server performance - database access queries results: List<> or IEnumerable<>?
我正在使用 WebSocketSharp
库在 ASP.NET 服务器上有一个套接字 运行。
服务器端套接字必须访问数据库,因此它return是项目的集合。
目前,我在数据访问层,方法return List<>
来自数据库的类型:
async Task<List<object>> GetListOfItems();
我想知道可枚举实现在性能方面是否更快并且便宜。
另外,他们也应该 async
来电吗?
List 是一个 IEnumerable,通过中介 - 如果您浏览参考源:
public class List : IList, System.Collections.IList, IReadOnlyList
IList 是:
public interface IList : ICollection
并且:
public interface ICollection : IEnumerable
所以在实际使用时它们实际上是相同的,速度差异将取决于您在做什么。
如果你想知道什么是最快的,那就测试吧!
System.Diagnostics 中有一个秒表 class 就是为了这个目的。
我正在使用 WebSocketSharp
库在 ASP.NET 服务器上有一个套接字 运行。
服务器端套接字必须访问数据库,因此它return是项目的集合。
目前,我在数据访问层,方法return List<>
来自数据库的类型:
async Task<List<object>> GetListOfItems();
我想知道可枚举实现在性能方面是否更快并且便宜。
另外,他们也应该 async
来电吗?
List 是一个 IEnumerable,通过中介 - 如果您浏览参考源:
public class List : IList, System.Collections.IList, IReadOnlyList
IList 是:
public interface IList : ICollection
并且:
public interface ICollection : IEnumerable
所以在实际使用时它们实际上是相同的,速度差异将取决于您在做什么。
如果你想知道什么是最快的,那就测试吧! System.Diagnostics 中有一个秒表 class 就是为了这个目的。