【代码块】防并发、防重复执行
来源:互联网 发布:有关数控铣床编程书籍 编辑:程序博客网 时间:2024/05/17 00:04
有些时候,防止一段代码块正在执行的时候重复执行,或防止其并发执行,可采用以下手段进行限制:
手段一:
private volatile AtomicBoolean working = new AtomicBoolean(false); void doSomeThing() { if (working.getAndSet(true)) return; try { //doSomeThings(); } catch (Exception e) { } finally { working.getAndSet(false); } } boolean isDoSomeThing() { return working.get(); }
手段二:
private ReentrantLock lock = new ReentrantLock(); void doSomeThing() { if (!lock.tryLock()) return; try { //doSomeThings(); } catch (Exception e) { } finally { lock.unlock(); } } boolean isDoSomeThing() { return lock.isLocked(); }
- 【代码块】防并发、防重复执行
- 防刷新重复提交
- JS防重复提交
- token防重复提价
- Webwork防重复提交
- struts2防重复提交
- 网页防重复提交
- struts2防重复提交
- 防重复提交
- 防重复提交
- 防表单重复提交
- 防表单重复提交
- 防重复提交
- 防表单重复提交
- 防刷新重复提交
- 防重复提交
- token防重复提交
- 防重复提交----令牌
- 未来数位 VenusBlood 免DVD补丁
- 一个很现实的爱情函数
- 环保光能发电 远程控制逆变
- 栈的简单应用
- .htaccess使用详解
- 【代码块】防并发、防重复执行
- android长链接服务
- [.net]threads by new vs. threads of ThreadPool
- jquery中的event事件属性
- Transforms CTM, 转换矩阵
- 伪静态(Rewrite).htaccess文件详解
- hdu_1496_equations( 二分 or hash )
- burning steps based on marvell pxa2128 and qcom
- hdu1040水题