私は最近、SimpleDateFormat
に深刻な問題があり、Java 8はもう使用しないことを認識しました。私はそれを知っていたことは知っていましたが、それにはあまり注意を払わなかったのです。ここまでは順調ですね。SimpleDateFormat - 安全ではありませんが、正確にはなぜですか?
しかし、私は最後の7〜8年で書かれた多くのレガシーコードを持っています。SimpleDateFormat
を使用し、多くのSimpleDateFormat
オブジェクトを静的フィールドとして保存し、それらを使用して日付を解析/書式設定します。そして、実際には、これらの製品(これらすべての年代)のこれらのSimpleDateFormat
インスタンス(静的かどうか)に問題は一度もありませんでした。
だから私は今このレガシーコードを見直して分析し、実際にSimpleDateFormat
の危険な用途があるかどうか確認したいと思います。
したがって、私の質問は...何のシナリオの下で
は正確にSimpleDateFormat
使用に問題があるのですか?
何らかの種類のチェックリストを取得して、私の古いコードを見直し、私のシナリオが「回避しようとする」リストに入っているかどうかを確認できますか?
そう、スレッドセーフではありません2つのスレッドが同じ 'SimpleDateFormat'オブジェクトを同時に使用している場合には、問題が発生します。 – Henry
@Henryはい、私はそう聞いてきました...しかし、OK ...それだけの問題ですか? –
コードが現在動作している場合、突然新しい欠陥が追加されることはありません。しかし、新しいDate&Time APIは**正しく**使いやすくなりました。 –