Java static 静态方法 并发(是否线程安全)
2015-11-10 15:57
369 查看
如上面的代码所示,在 setName 这个static方法里面u会不会有线程安全问题呢? |
首先说明一点,方法属于一个程序块,只有当别人调用它时才会调到内存里面去执行,也就是说当前有多少个线程在执行就有多少组方法块里的局部变量
(当然无论是静态方法还是实例方法,在内存中都只有一份代码,也就是只占用一份内存空间)
我们继续来说回上面的问题,那u这个变量到底是不是线程安全的呢?答案不取决与是否为静态方法,而在于传进来的user,如果传进来的user属于共享变量或者是同一个User变量,那u也不是线程安全的,如果user都是独立变量,那u也就不用担心线程安全的问题。
在web开发中,我们的servlet,struts2都是属于线程安全的,所以我们在使用静态方法处理业务时是不用担心并发的问题
相关文章推荐
- Struts2+Spring3+Hibernate——整合byMaven
- MyEclipse生成的Hibernate一对一配置问题
- 在Android Eclipse 开发如何 使用 (*.aar)文件
- WebService 在javaEE中的应用
- 坑爹的Spring数据源——自动提交事务
- poj1001 Exponentiation(JAVA实现)
- 一致性哈希及java实现
- Java内存模型
- Spring(二)——IoC
- spring 声明式事务、异步调用、AOP灯增强类功能 失效问题
- 网上商城项目实战之需求分析
- java jni编译
- Java多线程 学习笔记(一)
- ubuntu下jdk/maven环境安装
- Java遍历JSON
- Spring(一)——总体介绍
- 关于安卓eclipse SDK下载不了的解决方法
- java 入门 第二季4
- 主activity报空指针异常java.lang.RuntimeException: Unable to resume activity
- Spring3中的@value注解