日期:2014-05-19  浏览次数:20858 次

如何限制一个方法的执行时间?给自己的程序设计超时机制……
现在有个方法   可能执行的时间比较长,因为方法调用的其他公司开发的通讯组件
如果他的通讯组件出现问题   可能一天都不给我的程序返回结果
所以我想设计一个程序   限制方法的执行的最长时间
如果我的方法3分钟都没有执行完毕   就直接抛异常
有点想网络或者数据库访问的超时机制……

但不知道怎么实现……

------解决方案--------------------
开个线程执行这个方法吧。在主程序中做超时检查就可以了。
------解决方案--------------------
如楼上的方法。
启动新线程调用,超过3分钟,如果没有返回结果(可以在调用处加一个变量来记录调用的执行情况),则关掉线程。