java并发编程-线程安全1:servlet访问统计
来源:互联网 发布:海岛奇兵潜艇升级数据 编辑:程序博客网 时间:2024/06/18 04:37
非安全:
@NotThreadSafepublic class UnsafeCountingFactorizer extends GenericServlet implements Servlet { private long count = 0; public long getCount() { return count; } public void service(ServletRequest req, ServletResponse resp) { BigInteger i = extractFromRequest(req); BigInteger[] factors = factor(i); ++count; encodeIntoResponse(resp, factors); } void encodeIntoResponse(ServletResponse res, BigInteger[] factors) { } BigInteger extractFromRequest(ServletRequest req) { return new BigInteger("7"); } BigInteger[] factor(BigInteger i) { // Doesn't really factor return new BigInteger[] { i }; }}
安全:
@ThreadSafepublic class CountingFactorizer extends GenericServlet implements Servlet { private final AtomicLong count = new AtomicLong(0); public long getCount() { return count.get(); } public void service(ServletRequest req, ServletResponse resp) { BigInteger i = extractFromRequest(req); BigInteger[] factors = factor(i); count.incrementAndGet(); encodeIntoResponse(resp, factors); } void encodeIntoResponse(ServletResponse res, BigInteger[] factors) {} BigInteger extractFromRequest(ServletRequest req) {return null; } BigInteger[] factor(BigInteger i) { return null; }}
0 0
- java并发编程-线程安全1:servlet访问统计
- java并发编程(一) 线程安全(1)
- Java并发编程实战笔记(1)- 线程安全
- java并发编程实践学习(1)线程安全
- Java并发编程实战笔记(1)-线程安全简介
- 【Java并发编程实践】— 线程安全
- 【Java并发编程一】线程安全
- java并发编程基础之线程安全
- java并发编程实践_02线程安全
- Java并发编程实战2-线程安全
- java并发编程:线程安全-线程同步-synchronized和lock
- java并发:线程安全
- java-并发-线程安全
- java-并发-线程安全
- Java线程安全系列(1)--Servlet线程安全
- Java并发编程(二)--java线程安全的一些基础
- 并发编程の线程安全
- Java并发编程详解之 线程安全和对象共享
- Oracle 在ORDER BY 子句中加入主键或唯一键
- OpenCV学习篇之四 存取像素值
- 位图法
- 如何将Java项目转换为Java Web项目?
- 安卓Android控件ListView获取item中EditText值
- java并发编程-线程安全1:servlet访问统计
- 使用libcurl发送post请求
- Android screenOrientation 屏幕方向的设定与控制
- 【安装系统】Raspberry B+上手教程--自己梳理,亲测有效
- 二级列表ExpandableListView
- 弹窗效果
- War - UVa 10158 并查集
- C语言:关于实型精确度和取值范围的计算方法
- 博客开通感言