并发编程-概念

在计算机编程中有一个基本概念,就是在同一时刻处理多个任务的思想,许多程序设计问题都有要求,程序能够停下正在做的工作,然而处理某个问题,然后再返回主进程。有许多主进程的挂起是通过硬件中断来触发的,尽管这么做可以解决问题,但是其难度太大,而且不能移植,所以使得将程序移植到新型号的机器上时,既费时有费力。

        有时中断对于处理时间性强的任务是必须的,但是对大量的其他问题,我们只是想把问题切分成多个可独立运行的任务,从而提高程序的相应能。在程序中,这些彼此独立运行的部分称为线程,上述开练被称为“并发”。并发最常见的例子就是用户界面,通过使用任务,用户可以在按下按钮后快速得到一个响应,而不用被迫等待到程序完成当前任务结束,

        通常线程只是一种围挡一处理分配执行时间的手段,但是如果操作系统支持多处理器,那么每个任务都可以被指派给不同的处理器,并且他们是在真正地并行执行。在语言级别上,多线程所带来的便利之一便是程序员不用再操心机器上是有多个处理器还是只有一个处理器。由于程序在逻辑上被分为线程,所以如果机器拥有多个处理器,那么程序不需要特殊调整也能执行的更快。

        所有这些都使得并发看起来相当简单,但是有一个隐患:共享资源。如果有多个并行任务都要访问同一项资源,那么就会出问题,例如,两个进程不能同时像一台打印机发送信息。为了解决这个问题,可以共享的资源,例如打印机,必须在使用期间被锁定。因此,整个过程是:某个任务锁定某项资源,完成任务,然后师范资源锁,是其他任务可以使用该资源

        java并发是内置于语言中的,java SE5已经增加了大量额外的支持库

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值