Java之實現多執行緒的方式三:實現Callable介面(結合執行緒池使用)
1.Callable介面介紹
JDK API文件描述:
Callable 介面類似於 Runnable
,兩者都是為那些其例項可能被另一個執行緒執行的類設計的。但是 Runnable 不會返回結果,並且無法丟擲經過檢查的異常。
2.實現Callable介面,重寫call()方法
package com.xiao.callable;
import java.util.concurrent.Callable;
/**
* @Author 笑笑
* @Date 18:37 2018/05/23
*/
public class MyThreadClass implements Callable<String>{
//V call() 由於該方法的返回值是個泛型V,所以具體的返回型別可以自己定義,下面返回值設定為了String,
@Override
public String call() throws Exception {
return "笑笑";
}
}
3.使用工廠類Executors的靜態方法newFixedThreadPool()方法建立執行緒池,返回ExecutorService介面的實現類物件,然後呼叫submit()方法提交執行緒任務
package com.xiao.callable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
/**
* @Author 笑笑
* @Date 19:00 2018/05/23
*/
public class CallableDemo {
public static void main(String[] args) throws Exception{
//參數列示此執行緒池裡有多少可用的執行緒數量
ExecutorService es = Executors.newFixedThreadPool(3);
//提交執行緒任務,返回一個Future介面,引數為Callable實現類物件
Future<String> future = es.submit(new MyThreadClass());
//獲取返回值
String s = future.get();
System.out.println(s);
}
}
相關文章
- 建立執行緒的方式三:實現Callable介面執行緒
- Java之實現多執行緒的方式二:實現Runnable介面Java執行緒
- Java多執行緒實現方式Java執行緒
- Java實現多執行緒的三種方式Java執行緒
- SpringBoot執行緒池和Java執行緒池的實現原理Spring Boot執行緒Java
- java執行緒實現方式Java執行緒
- Java多執行緒-執行緒池的使用Java執行緒
- Java多執行緒之—Synchronized方式和CAS方式實現執行緒安全效能對比Java執行緒synchronized
- Java高併發與多執行緒(二)-----執行緒的實現方式Java執行緒
- Java多執行緒的實現Java執行緒
- Runnable介面實現多執行緒執行緒
- 執行緒池的實現執行緒
- Java多執行緒【三種實現方法】Java執行緒
- Java中實現執行緒的方式Java執行緒
- Java多執行緒之Callable,Future,FutureTaskJava執行緒
- Java建立多執行緒的幾種方式實現Java執行緒
- 面試-實現多執行緒的方式面試執行緒
- python執行緒池的實現Python執行緒
- 執行緒池的實現原理執行緒
- java多執行緒9:執行緒池Java執行緒
- Android多執行緒之執行緒池Android執行緒
- Java之實現多執行緒的方式一 :繼承Thread類Java執行緒繼承thread
- 多執行緒:執行緒池理解和使用總結執行緒
- Java多執行緒之守護執行緒實戰Java執行緒
- java多執行緒之執行緒的基本使用Java執行緒
- Java多執行緒-Callable和FutureJava執行緒
- Java多執行緒帶返回值的Callable介面Java執行緒
- 使用Java實現多執行緒程式設計Java執行緒程式設計
- 【Java】【多執行緒】執行緒池簡述Java執行緒
- 使用Runnable介面實現執行緒的方法執行緒
- 執行緒池ThreadPoolExecutor實現原理執行緒thread
- 簡易執行緒池實現執行緒
- 多執行緒【執行緒池】執行緒
- 如何實現多執行緒執行緒
- Java併發 之 執行緒池系列 (1) 讓多執行緒不再坑爹的執行緒池Java執行緒
- 多執行緒(三)、執行緒池 ThreadPoolExecutor 知識點總結執行緒thread
- 多執行緒系列(三):執行緒池基礎執行緒
- 執行緒池續:你必須要知道的執行緒池submit()實現原理之FutureTask!執行緒MIT