當前位置:生活全書館 >

生活小竅門

> runnable和callable區別

runnable和callable區別

runnable和callable的區別如下:

runnable和callable區別

相同點:

1、都是接口;

2、都可以編寫多線程程序;

3、都採用Thread.start()啟動線程;

不同點:

1、Runnable沒有返回值;Callable可以返回執行結果,是個泛型,和Future、FutureTask配合可以用來獲取異步執行的結果;

2、Callable接口的call()方法允許拋出異常;Runnable的run()方法異常只能在內部消化,不能往上繼續拋;

注:Callalbe接口支持返回執行結果,需要調用FutureTask.get()得到,此方法會阻塞主進程的繼續往下執行,如果不調用不會阻塞。

標籤: runnable callable
  • 文章版權屬於文章作者所有,轉載請註明 https://shqsg.com/zh-mo/xiaoqiaomen/mo4r0w.html