多线程 阻塞带返回值

版权声明:本文为wcuu原创文章。 https://blog.csdn.net/wcuuchina/article/details/78804621
/**
 * 
 * 调用摄像头的线程内部类
 * 
 * @author wangwei
 * 
 */
class CamThread implements Callable<String> {
private VideoService videoService;
private String param;
public CamThread (final VideoService videoService, final String param) {
this.videoService = videoService;
this.param = param;
}

@Override
public String call() {
return videoService.getRelation("http://127.0.0.1:8080/video/camera/stream/rtmp", "cameraNo=" + param);
}

}



调用线程

CamThread t = new CamThread(videoService, params[i]);
            tList.add(t);



将存入线程池中,阻塞 获取返回值

ExecutorService exec = Executors.newCachedThreadPool();
    ArrayList<Future<String>> results = new ArrayList<Future<String>>();
    for(int i = 0; i < params.length; i++) {
    results.add(exec.submit(tList.get(i)));
    }




猜你喜欢

转载自blog.csdn.net/wcuuchina/article/details/78804621