首页> 知识> 常识> 信息安全> 正文

java如何保证线程安全

2018.08.24 11:363150

并发(concurrency)一个并不陌生的词,简单来说,就是cpu在同一时刻执行多个任务。而Java并发则由多线程实现的。在jvm的世界里,线程就像不相干的平行空间,串行在虚拟机中,那么java如何保证线程安全?

网络安全小知识:

保证类线程安全的措施:

不共享线程间的变量;

设置属性变量为不可变变量;

每个共享的可变变量都使用一个确定的锁保护;

1.保证线程安全的思路:

通过架构设计

通过上层的架构设计和业务分析来避免并发场景。比如需要用多线程或分布式集群统计一堆用户的相关统计值,由于用户的统计值是共享数据,因此需要保证线程安全。从业务上分析出用户之间的数据并不共享,因此可以设计一个规则来保证一个用户的计算工作和数据访问只被一个线程或一台机器完成,这样从设计上避免了接下来可能的并发问题。

2.保证类无状态:

有状态会限制横向扩展能力,也可能产生并发问题。如果类是无状态的,那它永远是线程安全的。因此在设计阶段尽可能用无状态的类来满足业务需求。

3.区别原子操作和复合操作:

常见的复合操作包括check-then-act, i++等。

虽然check-then-act从表面上看很简单,但却普遍存在与我们日常的开发中,特别是在数据库存取这一块。比如我们需要在数据库里存一个客户的统计值,当统计值不存在时初始化,当存在时就去更新。如果不把这组逻辑设计为原子性的就很有可能产生出两条这个客户的统计值。

佰佰安全网提醒您:为了保障自己的安全,在网络中一定要实施网络安全防范措施与应用措施,另外多学习一些网络安全常识和网络安全技术知识也是非常重要的。

( 责任编辑: 张小付 )

展开剩余全文
分享到
  • 微信
  • QQ空间
  • 新浪微博
  • QQ好友
  • 人人网
  • 腾讯微博
发表我的评论
提交评论

相关阅读

网络祭奠的优势之处在哪里?这些好处很明显

网络祭奠的优势之处在哪里?这些好处很明显

2022.11.23 1330
在哪里找网络兼职?可以尝试在这些地方寻找

在哪里找网络兼职?可以尝试在这些地方寻找

2022.08.31 1922
靠谱的网络兼职有哪些?这些可以值得尝试

靠谱的网络兼职有哪些?这些可以值得尝试

2022.08.31 1561
网络兼职有哪些好处?这几点优势要了解

网络兼职有哪些好处?这几点优势要了解

2022.08.31 1651
网络兼职是什么意思?赶紧来了解下

网络兼职是什么意思?赶紧来了解下

2022.08.31 1738
加载更多

为您推荐

电脑宕机频繁出现,掌握使用技巧很重要

电脑宕机频繁出现,掌握使用技巧很重要

2022年06月30日 14:01 1374
不想工作时电脑死机,平时一定要懂这些知识

不想工作时电脑死机,平时一定要懂这些知识

2021年12月29日 10:44 2113
指纹支付安全有效,你还进入了误区之中吗

指纹支付安全有效,你还进入了误区之中吗

2021年06月28日 10:21 2931
做微商代理需要注意什么?

做微商代理需要注意什么?

2018年02月25日 13:37 6219
网络实名制有什么好处?

网络实名制有什么好处?

2018年01月17日 17:43 5882
返回顶部
返回首页