スレッドセーフについて

11 views
Skip to first unread message

山中大輔

unread,
Jun 18, 2022, 1:51:10 AM6/18/22
to Twitter4J J
マルチスレッド環境(Webアプリ)でtwitter4jを使用した際、ListやMapオブジェクトで想定外の例外(マルチスレッドによる同時処理による例外)が発生しました。

原因を調査すると、twitter4jのソースコードの中に、スレードセーフではない箇所がいくつか見受けられます。

(1) staticなArrayListオブジェクト
  「static final List」でGrep検索すると、数か所見つかります。

(2) staticなHashMapオブジェクト
  「static final Map」でGrep検索すると、数か所見つかります。

(1)については、Collections#synchronizedListを使用したり、(2)についてはConcurrentHashMapに置き換えるなどして、スレッドセーフにしていただけると助かります。
ご検討よろしくお願い致します。
Reply all
Reply to author
Forward
0 new messages