局部变量线程安全问题
2018-01-10 15:49
197 查看
局部变量线程安全问题
只看楼主收藏
回复
mincike
沝
2
求大神给解释下
回复
1楼
2016-02-01 14:29
举报 |个人企业举报垃圾信息举报
TARENAINTERNATIONAL,INC.
java
Java全栈+大数据工程师培训
javajava基础,Flume,Zookeeper实战,MetaStore及Hive执行流程剖析,Spark调优,轻松入门机器学习,免费试听申请!
2018-01-10 15:35 广告
mincike
沝
2
有人吗
回复
2楼
2016-02-01 14:32
举报 |个人企业举报垃圾信息举报
cheng406504325
淼淼淼沝
11
局部变量没有线程安全问题,不用解释了
收起回复
3楼
2016-02-01 14:35
举报 |个人企业举报垃圾信息举报
来自iPhone客户端
mincike: 那图片里打印的结果如何解释呢?
2016-2-1 14:36回复
cheng406504325: 回复
mincike :没看图片
2016-2-1 14:38回复
我也说一句
仰望星空Json
淼淼淼沝
11
单例里面存在成员变量才会有线程安全问题,局部变量跟这有什么关系!
收起回复
4楼
2016-02-01 15:20
举报 |个人企业举报垃圾信息举报
来自Android客户端
mincike: 可以看看图片,我知道局部变量没有现成安全问题,但图片里的打印结果
我开始怀疑 局部变量线程安全是否是对的
2016-2-1 15:25回复
mincike: 经多次测试应该uuid内部在线程并发的时候
不做同步的情况下是会产生重复的uuid
2016-2-2 22:21回复
仰望星空Json: 回复 mincike :还有这种情况,学习了
2016-2-3 10:09回复
我也说一句
脑放
淼沝
5
这是偶然吧 uuid不会主动检查是否重复的 小概率事件
回复
5楼
2016-02-01 16:55
举报 |个人企业举报垃圾信息举报
来自iPhone客户端
2012敌敌畏
淼淼淼沝
11
这个问题在于你的变量是否被多个线程同时访问的条件,显然,你的这个变量是局部变量,但是你在局部方法块中创建了其它线程,而且其它线程可以访问到你的这个局部变量,所以会出现线程安全问题,解决这个问题你可以把你的变量创建成线程安全类
收起回复
6楼
2016-02-02 08:45
举报 |个人企业举报垃圾信息举报
来自iPhone客户端
mincike: 我知道我的那个testlog是线程不安全的,它是多个线程共享的,我想说的是uuid
,经最终多次测试uuid在并发调用下产生的uuid是会重复的,导致了上述打印结果
2016-2-2 21:59回复
mincike: 针对产生uuid的代码做syncharnized测了很多次倒是没见重复的
2016-2-2 22:02回复
我也说一句
yan396986015
淼淼沝
8
静态类成为了一个全局变量,你得看看uuid中是否有成员变量没有做线程安全限制
收起回复
7楼
2016-02-02 13:31
举报 |个人企业举报垃圾信息举报
来自iPhone客户端
mincike: 回头自己研究下
uuid的源码
2016-2-2 22:17回复
yan396986015: 回复
mincike :线程安全主要是看有没有数据共享,而使用静态类就会变成全局共享,所以会有线程安全隐患,想要安全就得加锁
2016-2-3 13:50回复
我也说一句
897180673
水
1
感觉应该是uuid内部的问题.
突然想起了,当初学习汇编的时候,调用函数和传递形参
一个函数调用时在汇编是:call xxxxx
调用函数,传参数,局部变量都是压到栈中的
每调用一次函数,都要往栈中压一次局部变量,函数执行完成,栈就回收了.
所过多次调用函数,那么栈中就有多个局部变量.
相关文章推荐
- Singleton模式的静态局部变量的问题
- 【C++】使用局部变量赋值而非引用,导致内存多次释放的野指针问题
- 浅析Struts1和Struts2的Action线程安全问题
- 慎用Servlet成员变量-导致线程安全问题
- Win32线程安全问题.同步函数
- servlet 线程安全问题
- 在多线程中使用静态方法是否有线程安全问题
- C中全局变量和局部变量的初始化问题
- JAVA多线程同步的理解,主要论述单例模式的线程安全问题
- JS中最经典的全局变量和局部变量问题
- 局部变量问题
- 在多线程中使用静态方法是否有线程安全问题
- 多线程中使用静态方法是否有线程安全问题
- C++返回局部变量的指针问题
- C++ 参数传递, 局部变量内存 释放问题
- 设计模式____单列模式(懒加载,常加载,双检索,线程安全问题)
- Java ThreadLocal 线程安全问题解决方案
- 【原创】 [ 探索epoll的内置Leader-Follower支持以及线程安全问题, epoll可以更高效! ] - xmpp? - 博客园
- JavaWeb学习之Servlet(三)----Servlet的映射匹配问题、线程安全问题
- 局部变量中引用类变量的问题!