我正在编写一个Nexus 7应用程序,并继承了一个骨架应用程序。来自另一位开发者我对它运行了一个findbugs分析,findbugs警告SimpleDateFormat的一个静态实例:Android应用中的线程安全?
正如JavaDoc所述,DateFormats对于多线程使用本质上是不安全的。检测器发现了一个对通过静态字段获得的DateFormat实例的调用。这看起来很可疑。
我在我的应用程序中没有任何显式的线程创建或后台操作。因此,我需要考虑上述警告,还是可以忽略它?我不确定在Android应用中实际运行的线程(除了UI服务线程)。
的日期格式对象被设置在构造是这样的:
私有静态最后的SimpleDateFormat shortCsvDateFormat =新 的SimpleDateFormat( “EEE MMM d YYYY”);
很难说,如果我们不知道日期格式用于什么。它是只读还是在运行时设置? – schlingel
Dateformat对象在构造函数中分配一次。 –
不是一个很好的风格,但应该是一个问题 – schlingel