我有一个.NET类,它初始化一些固定的只读参考数据。如果我在ASP.NET中的Castle Windsor中将此类实例化为Singleton,那么可能所有通过瞬态Web调用访问此类的尝试都将从内存中的参考数据的单个实例读取。
这是一种有效的方法吗?有没有缺点?
答案 0 :(得分:3)
绝对是一种有效的方法。
我认为只有缺点是你需要确保该类是可重入的 - 它可以被多个线程同时访问。
答案 1 :(得分:0)
ASP.NET有一个非常有效的缓存框架(https://msdn.microsoft.com/en-us/library/6hbbsfk6.aspx)可以为你做这件事,处理到期时间,prioirtisation,当你内存不足时可以从缓存中删除项目等
与所有内容一样,这取决于您的使用案例 - 您拥有多少数据,采用何种形式等等。