是否有任何好的示例開始使用java同步方法調用。我有兩個方法a和b,必須異步調用b。任何建議?如何異步調用java方法?
-3
A
回答
1
這是一個很大的話題,有很多陷阱。但是,您可以通過將您的方法包裝在Callable<T>
中並將其提交至ExecutorService.submit
以獲得良好的開局。這將返回一個Future<T>
,它有一個方法get()
。最後一種方法返回T
,但直到Callable<T>
完成。
例如,假設foo.b()
返回String
。你會做這樣的事情:
Callable<String> asyncB = new Callable<String>() {
@Override
public String call() {
foo.b();
}
};
Future<String> futureB = myExecutorService.submit(asyncB);
// asyncB will now execute on a separate thread,
// which is managed by the ExecutorService
foo.a(); // synchronous call
String resultB = futureB.get();
如果你在的Java 8中,第一位可以只是:
Callable<String> asyncB =() -> foo.b();
0
如果你任何機會使用Spring,它們具有優異的異步支持。
http://docs.spring.io/spring/docs/3.0.x/reference/scheduling.html
相關問題
- 1. 如何從非異步方法異步調用異步方法
- 2. 如何從非異步方法調用異步方法?
- 3. 如何從不是異步方法調用異步方法?
- 4. 使用JNI異步調用Java方法
- 5. 異步方法調用同步方法
- 6. Java的異步方法調用
- 7. 異步調用異步方法
- 8. 如何調用異步方法?
- 9. 如何調用異步方法
- 10. 如何使庫方法調用異步?
- 11. 如何異步調用jersy post方法?
- 12. 如何在不使用C#的異步方法中調用異步方法.Result
- 13. ASP.NET web窗體 - 如何異步調用WCF異步方法?
- 14. 異步調用webservice方法
- 15. C#異步方法調用
- 16. WCF調用異步方法
- 17. 異步方法調用
- 18. 調用方法aspx異步
- 19. 調用WCF方法異步
- 20. 異步調用方法
- 21. 異步方法調用PHP
- 22. 如何在Java中實現異步方法調用?
- 23. 如何在java線程內調用異步方法?
- 24. 如何在Java中異步調用方法
- 25. 異步調用同步webservice方法
- 26. 同步異步調用的方法?
- 27. 同步調用異步方法
- 28. 在同步方法中調用異步
- 29. 從ASP.NET調用異步方法調用
- 30. 如何在任何異步RPC調用時調用GWT方法
搜索教程在谷歌 – Raptor
需要。更多。語境。 – user2864740