2009-07-08 83 views
2

如果我有多个进程访问注册表值每秒数千次,读取此注册表值是否会有任何重大的性能影响?访问Windows注册表值有什么性能影响?

注册表值的值永远不会改变,它将是只读的。我想另一个问题是,读取注册表值的阻塞操作?

注册表值用于存储由ASP.NET应用程序,Win Forms应用程序和WCF服务访问的数据库连接详细信息。

感谢,

斯图尔特

回答

2

注册表是快,真快。但每秒数千次?至少,缓存每个应用程序中的值,以便在应用程序启动时只需读取一次。

+0

第一次访问后,Windows注册表已经为您缓存值,不是吗?您应该将本地价值存储在本地,除非您期望价值旋转,但肯定。 – 2009-07-08 11:10:57

0

Windows注册表只是一个恰好比其他文件有更多保护的文件。

然而,就像任何文件一样,访问时会有性能问题。

我建议您在应用程序启动时读取一次值,并将它们存储在内存中,并根据需要将它们传递给对象。