Java的线程同步 & 并发操作

并发:CUP在同一时间或同一时段内只能执行一件事情,而不同时件执行时,切换得十分快速,因为CUP的频率非常高,切换的速度人根本感受不出来。


同步:同步是多个任务进行时,按照一定的规律进行着。


线程并发:同一时间间隔中,有多个线程在同时执行,就是线程的并发。线程可能互相有逻辑影响,所以要进行控制,进行控制和协调就是线程的同步。


系统采用多线程并发来提高性能和吞吐量,所以就会引入线程同步问题。


控制并发可以使用sleep方法实现同步,需要顺序的话按照join来实现同步,还有wait,notify方法实现线程的同步。


Java中当多线程访问共享资源的时候,可以在方法名前面加入synchronized来处理。

synchronized 像一把锁一样,有申请着申请时,若该资源没有被占用,则给申请者,若被占用了,则只可以申请不可以使用,该资源被使用完之后会被释放,这个时候才可以给其他申请的使用。


并发控制:为了多线程操作带来资源读写问题,若不控制可能会出现:死锁,读脏数据,不可重复读,丢失更新等异常,主要通过加锁来控制。
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值