java并发

链接:http://tutorials.jenkov.com/java-concurrency/index.html

学习小结

早期计算机只有一个cpu,且一次只能运行一个程序。后来出现了多任务的技术,意味着计算机可以在“同一时间”内运行多道程序(任务)。但它不是真正的同时运行,只是cpu被多道程序共享而已,cpu在程序之间依照一定方式轮流使用,给人一种同时运行的错觉。

后来又出现多线程,多线程可以在单处理器上实现,也可以在多处理器(或者多核cpu)中实现。多线程意味着一个终须中可以存在多个线程。而一般认为一个线程运行在一个单独的cpu上(只是可以这么理解,并不是说一个线程必定对应一个cpu,毕竟单处理器中也可以实现多线程)。如果一个程序中有多个线程,看起来就好像在这个程序中有多个cpu同时运行。这么假设,只是为了更好的理解多线程,更好的处理并发问题

如果不进行同步,多线程程序的行为是不可预测的。多线程“同时”对内存进行操作,会造成一些问题。这些问题在单线程程序中可能不会出现。也有些问题也不会出现单处理机中,因为单处理机中线程之间并不是真正的同时运行。

多线程(Multithreading)会出现并发问题(Concurrency),多任务(Multitasking)和分布式系统(distributed systems)也会出现并发问题,并且并发问题都是类似的。

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值