Python知識(shí)分享網(wǎng) - 專(zhuān)業(yè)的Python學(xué)習(xí)網(wǎng)站 學(xué)Python,上Python222
JDK5.0新增線(xiàn)程創(chuàng)建方式 PDF 下載
匿名網(wǎng)友發(fā)布于:2024-02-26 10:20:53
(侵權(quán)舉報(bào))
(假如點(diǎn)擊沒(méi)反應(yīng),多刷新兩次就OK!)

JDK5.0新增線(xiàn)程創(chuàng)建方式  PDF 下載 圖1

 

 

 

資料內(nèi)容:

 

一、新增方式1:實(shí)現(xiàn)Callable接口

(1)介紹

【Callable接口】

 

@FunctionalInterface
public interface Callable<V> {
/**
* Computes a result, or throws an exception if unable to do so.
*
* @return computed result
* @throws Exception if unable to compute a result
*/
V call() throws Exception;
}

 

 

<>是泛型的意思,V決定了call()方法返回值的類(lèi)型。
 

與使用 Runnable 相比, Callable 功能更強(qiáng)大些
           相比 run() 方法,可以有返回值。
           方法可以?huà)伋霎惓!?br />            支持泛型的返回值(需要借助FutureTask類(lèi),獲取返回結(jié)果)。
Future 接口(了解)
           可以對(duì)具體Runnable、Callable任務(wù)的執(zhí)行結(jié)果進(jìn)行取消、查詢(xún)是否完成、獲取結(jié)
果等。
          FutureTask是Futrue接口的唯一的實(shí)現(xiàn)類(lèi)。
          FutureTask 同時(shí)實(shí)現(xiàn)了Runnable, Future接口。它既可以作為Runnable被線(xiàn)程執(zhí)
行,又可以作為Future得到Callable的返回值。
 

缺點(diǎn):在獲取分線(xiàn)程執(zhí)行結(jié)果的時(shí)候,當(dāng)前線(xiàn)程(或是主線(xiàn)程)受阻塞,效率較低。