0
点赞
收藏
分享

微信扫一扫

Java并发之Callable和Runnable


Java并发中,提供的Callable和Runnale最大的区别即为:

    Callable接口可以返回值,而Runnable不能返回值;


package com.leasehouse;

import java.util.concurrent.*;

public class TestCallable {
public static void main(String[] args) {
ExecutorService executorService = Executors.newFixedThreadPool(10);

try {
Future<User1> future = executorService.submit(new taskCallable());
User1 ff = future.get();
System.out.println("ff = " + ff.getName());

} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
} finally {
executorService.shutdown();
}
}
}

class taskCallable implements Callable<User1> {
public User1 call() throws Exception {
String cc = "fyc";
System.out.println("cc =" + cc);
User1 user1 = new User1();
user1.setName(cc);
Thread.sleep(3000);
return user1;
}
}


class User1 {
private String name;
public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}



}



举报

相关推荐

0 条评论