android默认日期时间格式的线程安全性?
我试图找出它的线程安全使用android默认日期时间格式的线程安全性?,android,thread-safety,date-format,Android,Thread Safety,Date Format,我试图找出它的线程安全使用 DateFormat dateFormat =android.text.format.DateFormat.getDateFormat(getApplicationContext()); 我很清楚object不是线程安全的,但是前面的代码片段似乎是编写android程序的非常流行的方式,例如,我没有注意到任何关于线程问题的提及。android.text.format.DateFormat是它自己的功能和java.text.simpleDataFormat的混合体。
DateFormat dateFormat =android.text.format.DateFormat.getDateFormat(getApplicationContext());
我很清楚object不是线程安全的,但是前面的代码片段似乎是编写android程序的非常流行的方式,例如,我没有注意到任何关于线程问题的提及。
android.text.format.DateFormat
是它自己的功能和java.text.simpleDataFormat
的混合体。你自己看看:
据我所知,它是
格式(…)
方法不使用SimpleDateFormat
也不使用任何实例字段(只读取一些静态字段),因此它们应该是线程安全的。可能重复@Peter请记住,返回的方法值是DateFormat,而不是SimpleDate格式。如果你能证明其实是SimpleDateFormat,我认为这个问题已经解决了。你说得对。我的错误。在下面贴了一个答案。我会接受这个正确的答案,因为源代码提供了所有必要的信息。然而,我发现由此产生的行为令人担忧,一方面format
方法是线程安全的;但是getDateFormat
返回的simpleDataFormat
的新实例不是线程安全的。java文档信息没有提到线程。