并发其实并不等于多线程,可以理解为多线程是实现并发的一种方式,因为实际情况中并发并不一定就是一定依赖于多线程,然而在Java中我们说到并发基本上就与多线程拉不开关系,所以我把标题置成“java中的多线程并发”。
在编码过程中,多线程这个东西也许你很少用,也许你偶尔用,也许你经常用,然而实际工作中对于每一个coder来说多线程都是存在于我们的环境中的,比如运行J2EE应用的的中间件、我们的集成开发环境、SWT类库等,在一个coder的周围或者说在计算机周围它都无处不在,如影随形。
然而多线程也许是一把利器,当你运用得当会所向披靡,运用不当也会走火入魔。
多线程能帮助我们干什么?
首先,硬件越来越强大,能更充分的利用多核处理器让我们的程序跑得更快使很多后台的操作可以并行运行,让用户能及时打到希望的效果,比如我们在IDE界面中做很多操作时在IDE后台都要做很多操作,举个实例你在Eclipse中写了一行代码,然后ctl+s,至少很直白的看到了,这行代码被保存到了对应的硬盘文件中,同时对这行代码做了编译工作并检测编译释放通过。在用户的眼里瞬间就完成了你想要达到的效果,如果你做一个操作对应后台有很多需要处理的逻辑只在一条工作线上运行,那么你得到的回馈就会相应的延后。
其次,为了设计更合理,在很多应用中为了完成一些调度,或者是实现一些服务,而这些调度和服务在实际情况中也是并行运行的,跟主线程没有必然的联系(但是他始终是为主线程服务的,有一定的关系,所以是相对的不是绝对的),我们根据实际设计需要希望这调度是并行的。比如:在iteye的编辑器里写博客时你会注意到右上角有一个草稿保存提示功能。
另外就是实际业务需要也需要运用到并发,尤其是游戏中使用并发是提高效率和达到实际效果的主要技术,如在游戏中的地图加载更新、色彩渲染、动作渲染等在使用并发的技术上使交互性更好。
多线程的机制是什么?
将我们的程序划分成多个分离的、独立运行的任务,这些独立的任务就对应一个线程,这些任务的调度将由执行线程来驱动,他们共同存在于一个进程中,在这个进程中,他们并发执行任务,给我们感觉就是每个线程好像拥有了一个CPU一样,其底层是切分CPU时间,根据调度轮流切换不同线程并分配给他对应的占用时间,只不过他们的切换和时间的等待是我们感觉不到的,我们能感觉到的关心的只是是否完成了我们想要干的事情,其底层的实际调度对于我们来说是透明的。
Java中的如何创建一个线程?
第一种:实现Runnable接口,重写run()方法
第二种:继承Thread类,重写run()方法,实质上Thread类也是实现了Runnable接口
分享到:
相关推荐
java面试多线程高并发相关回家技巧(超经典),对你的面试绝对有用,请放心学习
回望期权
再学Java——适用于网络开发的平台无关性语言,在Java的Object对象实现了wait,notify的对象级别的多线程的管程机制,让每一个Java对象都适用于高并发 回望Java——设计为Jvm一体的特性,Java是Jvm与编程人员的或...
第一框 回望成长课件
有交易费的时间依赖型回望期权的定价研究,王建稳 ,王利伟,假定标的资产模型中的参数为时间的函数(即无风险利率为r(t),标的资产的期望回报率为u(t),标的波动率为l(t)以及红利率为q(t)) ,利用风�
高中历史之图说历史回望太平天国素材
跳-扩散价格过程下有交易成本的回望期权定价研究,袁国军,杜雪樵,本文主要研究了跳-扩散价格过程下有交易成本的回望期权的定价问题,利用广义Ito公式,得到了在该模型下期权价格所满足的微分方程�
跳-扩散模型中的回望期权定价,赵见,秦军,在实际金融市场中,由于重要的新信息的到达会对股票的价格产生冲击,这时股票价格往往会出现间断的“跳跃”,其定价问题远比标的
回望专用记事本源码.rar
餐饮行业深度分析-回望美国餐饮历程,看中国餐饮发展趋势.docx
完整版回望专用记事本源码.rar
回望专用记事本源码.e.rar
Java面试SQL查询语句突击练习突击,对你面试绝对有帮助。请放心下载学习
CPU历史之旅--回望过去的脚步.mht CPU历史之旅--回望过去的脚步.mht CPU历史之旅--回望过去的脚步.mht CPU历史之旅--回望过去的脚步.mht CPU历史之旅--回望过去的脚步.mht
《回望成长》PPT优秀教学课件
《回望成长》PPT优质教学课件
完整版回望专用记事本源码.e.rar
java面试常问基础知识总结(超经典),对你的面试绝对有帮助。
奇异期权的蒙特卡洛定价,包含美式、回望、障碍期权
回望期权的定价,有意者自取。希望能帮助到大家。