码迷,mamicode.com
首页 > 编程语言 > 详细

接口长时间无结果项目线程假死

时间:2019-12-03 11:44:37      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:exce   second   call()   java   cut   try   div   cal   cep   

在项目中经常会有些调用无缘无故无响应,这时候怎么处理呢?

这儿提出一种解决方案.

是使用线程来做控制.

import java.util.concurrent.Callable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;

public class Test {
    
    private static ExecutorService exec = Executors.newFixedThreadPool(1);
    public static void main(String[] agst){
        try {
            //Callabal<String> string: 是返回值类型
            Callable<String> callable = new Callable<String>() {
                public String call() throws Exception{
                    Thread.sleep(2010);
                    //需要调用的方法或者接口
                    //如果接口有返回值直接return返回值
                    return "success";
                }
            };
            Future<String> submit = exec.submit(callable);
            //result 接口的返回值 , get(2"时间" , TimeUnit.SECONDS"时间类型")
            String result = submit.get(2, TimeUnit.SECONDS);
            //自己的逻辑
        } catch (Exception e) {
            System.out.println(e);
        }
    }
}

代码做过修改没做测试,使用的时候测试下再使用.

 

接口长时间无结果项目线程假死

标签:exce   second   call()   java   cut   try   div   cal   cep   

原文地址:https://www.cnblogs.com/brent-leon/p/11975369.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!