java 1.7控制代码超时时间
来源:互联网 发布:人工智能需要什么专业 编辑:程序博客网 时间:2024/06/09 16:49
防止重复提交有多种方法,有一种方法是操作数据之前先向一个临时表(有主键约束)中插入一条数据,这条数据可以是单据的主键id。当后续用户重复提交时,由于主键冲突就会报错,然后系统提示重复提交。但现在出现了一个问题,如果首次提交的事务迟迟不不能提交(或许是功能慢),后面重复提交的事务就会产生锁。如何避免后面的锁呢?就需要在代码里面写上控制超时的时间:
import java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.Future;import java.util.concurrent.TimeUnit;import java.util.concurrent.TimeoutException;public class ThreadTimeoutTest { public static void main(String[] args) throws InterruptedException, ExecutionException { ExecutorService threadPool = Executors.newFixedThreadPool(1); Callable<String> call = new Callable<String>() { public String call() throws Exception { //开始执行耗时操作 Thread.sleep(1000 * 5); return "线程执行完成."; } }; try { Future<String> future = threadPool.submit(call); String result = future.get(2000 * 1, TimeUnit.MILLISECONDS); //任务处理超时时间设为 2 秒 System.out.println("任务成功返回:" + result); } catch (TimeoutException ex) { System.out.println("处理超时啦...."); ex.printStackTrace(); } catch (Exception e) { System.out.println("处理失败."); e.printStackTrace(); } // 关闭线程池 threadPool.shutdown(); }}
0 0
- java 1.7控制代码超时时间
- java设置一段代码执行超时时间
- java设置一段代码执行超时时间
- java设置一段代码执行超时时间
- java设置一段代码执行超时时间
- java设置一段代码执行超时时间
- java代码运行时间超时exception方法
- Transactional超时时间控制
- Transactional超时时间控制
- 并发包之Future:代码级控制超时时间
- Transactional超时时间timeout控制
- Java 多线程设置线程超时时间之 Callable接口和Future接口 线程超时控制
- Java 多线程设置线程超时时间之 Callable接口和Future接口 超时控制
- java超时控制
- java 线程超时时间
- Transactional超时时间控制与mysql事务超时时间
- 执行脚本实现超时时间控制 ---Process
- Oracle EBS控制会话时间及超时
- docker容器中切换用户,提示权限不足
- 根据路径下载文件
- 当try和finally中都有return的时候,结果是什么?
- MFC中WebBrowser.Navigate方法如何调用本地的.htm文件?
- 关于Unity发布Webgl在chrome中打开报错的问题
- java 1.7控制代码超时时间
- ubuntu server 系统,更换阿里云源
- kali下安装nessus(最新版)及插件下载和更新
- Crontab定时任务解析
- intellij idea 激活方式汇总
- php file_get_contents和curl请求接口并获取数据
- pat 1079
- PHP可逆加密算法
- Python 中列表