Java程序性能之四
2007-05-16 19:19
162 查看
学会使用java.util.concurrent包,在开发服务器端程序更为重要,要了解的是Java应用服务器的基本框架,Java服务器大量采用线程技术,很多对象要被多个线程同时访问,采用synchronized等技术会影响性能,下边是使用并发包的两个小例子:
使用AtomicInteger记录在线的用户数,下边是我们项目中使用的一段代码:
private final AtomicInteger onlineUserCount = new AtomicInteger();
public void increaseOnlineUserCount() {
onlineUserCount.incrementAndGet();
}
public void decreaseOnlineUserCount() {
onlineUserCount.decrementAndGet();
}
public int getOnlineUserCount() {
return onlineUserCount.get();
}
在HttpSessionListener中自动更新在线用户数。
使用ConcurrentHashMap 记录所有在线的注册用户数:
private final ConcurrentHashMap<Long, User> onlineUserMap = new ConcurrentHashMap<Long, User>();
public void addOnlineUser(User user) {
if(user != null && user.getId() != null) {
onlineUserMap.put(user.getId(), user);
}
}
public void removeOnlineUser(User user) {
if(user.getId() != null) {
onlineUserMap.remove(user.getId());
}
}
当然包concurrent中还提供了其他原子更新的类供使用,像AtomicLong,另外需要注意的是,concurrent中的大部分并发类不支持添加null值。
浏览本系列其他blog,错误难免,欢迎指教:
Java程序性能之一
Java程序性能之二
Java程序性能之三
使用AtomicInteger记录在线的用户数,下边是我们项目中使用的一段代码:
private final AtomicInteger onlineUserCount = new AtomicInteger();
public void increaseOnlineUserCount() {
onlineUserCount.incrementAndGet();
}
public void decreaseOnlineUserCount() {
onlineUserCount.decrementAndGet();
}
public int getOnlineUserCount() {
return onlineUserCount.get();
}
在HttpSessionListener中自动更新在线用户数。
使用ConcurrentHashMap 记录所有在线的注册用户数:
private final ConcurrentHashMap<Long, User> onlineUserMap = new ConcurrentHashMap<Long, User>();
public void addOnlineUser(User user) {
if(user != null && user.getId() != null) {
onlineUserMap.put(user.getId(), user);
}
}
public void removeOnlineUser(User user) {
if(user.getId() != null) {
onlineUserMap.remove(user.getId());
}
}
当然包concurrent中还提供了其他原子更新的类供使用,像AtomicLong,另外需要注意的是,concurrent中的大部分并发类不支持添加null值。
浏览本系列其他blog,错误难免,欢迎指教:
Java程序性能之一
Java程序性能之二
Java程序性能之三
相关文章推荐
- 提高java程序性能我们能做什么
- Java程序性能优化 程序和代码优化
- * java程序性能优化 Posted on 2010-07-28 16:04 chinaifne 阅读(2246) 评论(0) 编辑 收藏 一、避免在循环条件中使用复杂表达式
- Java程序性能优化- 让你的Java程序更快、更稳定pdf
- Java 程序性能优化《第一章》Java性能调优概述 1.4小结
- Java程序性能和速度优化实例
- 提升性能 Java程序优化的一些最佳实践
- java程序性能优化必读
- Java程序性能优化之找出内存溢出元凶
- 利用TPTP对Java程序进行性能测试
- 从java汇编来看java程序的性能优化
- 谈Java程序的性能优化
- 【Java语言】如何提高Java程序性能?
- 单例模式_java程序性能优化
- 如何优化JAVA程序开发,提高JAVA性能
- Java程序性能优化(1)
- 写出优雅性能的JAVA程序必须遵守的35个原则
- Java 程序性能优化 --读书笔记 1
- JAVA程序性能优化
- Java程序性能分析工具Java VisualVM(Visual GC)—程序员必备利器