あれこれ備忘録@はてなブログ

勉強したことやニュースや出来事を備忘録として書いていきます

非同期にはAsyncTwitterを使おう twitter4j

twitter4jでタイムラインを取得するとき、取得までの間処理が止まってしまうのが気になる場合はスレッドを作ってそこで処理してたのですが、AsyncTwitterクラスに非同期で処理を行う仕組みが用意されているそうです。

Twitter twitter = new TwitterFactory(confbuilder.build()).getInstance();

の代わりに

AsyncTwitter asyncTwitter = new AsyncTwitterFactory(confbuilder.build()).getInstance();

でAsyncTwitterクラスのインスタンスを作り、

asyncTwitter.addListener()

でTwitterListenerやそのアダプタークラスのTwitterAdapterをaddし、そこで非同期に処理された結果を使った操作を行うということだそうです。

ま、いずれにしろGUI(Swing)操作関係の処理はSwingWorkerやSwingUtilities.invokeLaterを使わなくてはいけないのは変わらないですけども。

参考URL

Twitter4Jの使い方‎ > ‎AsyncTwitter 陽昇れども地の底に光届かず

twitter4j-examples/src/main/java/twitter4j/examples/async/AsyncUpdate.java at master from yusuke/twitter4j - GitHub

広告を非表示にする