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執行緒
- java執行緒實現方式Java執行緒
- Java多執行緒-執行緒池的使用Java執行緒
- Java高併發與多執行緒(二)-----執行緒的實現方式Java執行緒
- Runnable介面實現多執行緒執行緒
- java多執行緒系列之執行緒池Java執行緒
- Java多執行緒的實現Java執行緒
- 面試-實現多執行緒的方式面試執行緒
- SpringBoot執行緒池和Java執行緒池的實現原理Spring Boot執行緒Java
- Java多執行緒之—Synchronized方式和CAS方式實現執行緒安全效能對比Java執行緒synchronized
- Java多執行緒【三種實現方法】Java執行緒
- Java多執行緒——執行緒池Java執行緒
- Java中實現執行緒的方式Java執行緒
- 多執行緒-匿名內部類的方式實現多執行緒程式執行緒
- Java 執行緒池的原理與實現Java執行緒
- Java建立多執行緒的幾種方式實現Java執行緒
- 多執行緒-多執行緒方式3的思路及程式碼實現:方式3依賴於執行緒池存在的執行緒
- java實現多執行緒的方法Java執行緒
- Java多執行緒的實現方法Java執行緒
- 執行緒池的實現原理執行緒
- java多執行緒9:執行緒池Java執行緒
- Java多執行緒18:執行緒池Java執行緒
- 多執行緒-多執行緒方式1的程式碼實現執行緒
- Java多執行緒之Callable,Future,FutureTaskJava執行緒
- 多執行緒:執行緒池理解和使用總結執行緒
- Java多執行緒之守護執行緒實戰Java執行緒
- java多執行緒之執行緒的基本使用Java執行緒
- [轉]Java 執行緒池的原理與實現Java執行緒
- 簡易執行緒池實現執行緒
- 多執行緒【執行緒池】執行緒
- 【Java】【多執行緒】執行緒池簡述Java執行緒
- Android多執行緒之執行緒池Android執行緒
- JAVA多執行緒下載的實現Java執行緒
- 使用Runnable介面實現執行緒的方法執行緒
- 如何實現多執行緒執行緒