0

我有一个静态类,其中包含许多从配置文件中读取值的函数。配置文件随软件一起提供,软件本身从不写入它们。

我的应用程序中有许多线程正在运行,我需要在静态类中调用一个函数。然后该函数将转到其中一个配置文件,查找一个值(取决于我在调用该函数时传递的参数),然后返回一个结果。

我需要线程能够同时读取所有文件(或者更确切地说,不同步到主线程)。线程永远不会写入配置文件。

因此,我的问题很简单,允许多个线程调用相同的静态函数同时从同一个文件中读取值会有什么问题吗?我可以理解,如果某些线程正在写入文件而其他线程正在读取,则会出现序列化问题,但这永远不会发生。

基本上:
1. 允许多个线程同时从同一个文件中读取是否存在任何问题?
2. 允许多个线程同时调用相同的静态函数(在同一个静态类中)有什么问题吗?

4

1 回答 1

0

是的,这可能是一个问题,具体取决于类实际定位和读取文件的方式,更重要的是,如果类还缓存值,因此它不需要每次都从文件中读取。如果没有看到你的类的实际代码,就没有办法告诉你你的代码是否是线程安全的。

于 2013-06-11T19:09:37.440 回答