« ラジオのノイズ | Main | SunbirdとGoogleとTask »

2007.07.05

JAXB2.0とスレッド

 Performance and thread-safetyUnofficial JAXB Guide)およびJAXB FAQより。

 ざっくりとまとめると、

Java6に含まれているSunの参照実装(RI)においては、JAXBContextはスレッドセーフだが、Marshaller、Unmarshaller、Validatorはスレッドセーフではない

ということになるようです。

 で、パフォーマンスを向上させる場合、スレッドセーフとなっているJAXBContextは毎回生成するのではなくSingletonでstaticに保持するようにした方がよい、ということだそうです。
 なお、VM起動時等にJAXBContextを初期化する場合、そのアプリケーションで使用する可能性のあるクラスを全て(JAXBContextに)登録しておく必要があるので、注意が必要な場合もあるかと。

#JAXBContext#newInstance(String)の初期化方法を使用する場合がよくわからない・・・(newInstance(Class...)は簡単なのですが)。

|

« ラジオのノイズ | Main | SunbirdとGoogleとTask »

Java」カテゴリの記事

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack


Listed below are links to weblogs that reference JAXB2.0とスレッド:

« ラジオのノイズ | Main | SunbirdとGoogleとTask »