java并发之基础概念

[quote] 说起java并发,首先会想到的估计就是线程,这两天因为项目里面有关于类似秒杀的功能,所以就回顾一下java线程的相关知识,首先说几个概念
[b]原子性[/b]
原子操作,指的是该操作是不可分割的,如:a=1,但是a++就不是原子操作,因为该操作分成两步a=a+1,非原子操作都会存在线程安全问题,需要我们使用同步技术(sychronized)来让它变成一个原子操作,但是原子类可以保证,如下代码所示:
private AtomicLong count = new AtomicLong(0);

public long getCount() {
return count.get();
}

public void add() {
count.incrementAndGet();
}

[b]可见性[/b]
可见性,是指线程之间的可见性,一个线程修改的状态对另一个线程是可见的。也就是一个线程修改的结果。另一个线程马上就能看到。比如:用volatile修饰的变量,就会具有可见性。volatile修饰的变量不允许线程内部缓存和重排序,即直接修改内存。所以对其他线程是可见的。

另外引用一篇文章讲的概念挺好:[url]http://www.importnew.com/24082.html[/url][/quote]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值