12
Javaでメソッドを非同期に呼び出す方法
私は最近Goのgoroutinesを見ていて、Javaに似たものがあればいいと思いました。私がメソッド呼び出しを並列化する一般的な方法を検索した限り、次のようなことをすることです: final String x = "somethingelse"; new Thread(new Runnable() { public void run() { x.matches("something"); } }).start(); それはあまりエレガントではありません。これを行うより良い方法はありますか?プロジェクトでそのようなソリューションが必要だったので、非同期メソッド呼び出しの周りに独自のラッパークラスを実装することにしました。 J-Goでラッパークラスを公開しました。しかし、それが良い解決策かどうかはわかりません。使い方は簡単です: SampleClass obj = ... FutureResult<Integer> res = ... Go go = new Go(obj); go.callLater(res, "intReturningMethod", 10); //10 is a Integer method parameter //... Do something else //... System.out.println("Result: "+res.get()); //Blocks until …