您的位置:首页 > 编程语言 > Java开发

Java多线程(1)-写在前面的话

2017-01-14 20:25 204 查看
写在前面的话

编写正确的程序很难,编写正确的并发程序则难上加难。正确的编写并发程序,能够使得程序的执行效率和性能大幅度提升。而在并发程序中,因为同步造成的各种诡异的问题,却让开发者们挠头。这种问题往往是偶现并很难定位,从而影响了开发的进度,降低了程序的稳定性。如果想正确编写JAVA并发程序就必须扎实的掌握并发基础知识,本章目因此而做。

一.并发程序的好处

(1)并行利用资源,不需等待提高资源利用率和系统的吞吐率。

(2)更少的程序响应时间,使界面不卡顿带来更好的用户体验。

(3)给程序带来更多的模式设计,为性能和体验的提升提供多种可能性。

(4)能发挥出现代处理器强大的处理能力。

二.并发程序的风险

(1)安全性问题,在没有充分同步的多线程程序中,线程操作的优先顺序是不可预测的,会有时产生极为奇怪的结果。这种问题往往较难定位。

(2)活跃性问题,当线程无法继续进行下去的时候就会触发活跃性问题,类似于线程中存在预期之外的无限循环,死锁,无限等待等。这种问题出现后,就会让使用线程带来的好处荡然无存,这种错误同样是难以分析定位的。

(3)性能问题,多线程的好处多多,但却不能毫无节制的使用线程,CPU对线程间频繁的切换同样消耗大量资源,不正确的使用多线程以及锁的滥用往往会使程序效率急剧降低,甚至还没有单线程执行效率高。所以为任务分配合理的线程数量以及对锁的巧妙使用是极为关键的。

总结

以上利弊,可以看出这是一把双刃剑,正确的使用多线程将带来程序执行效率以及用户体验大幅提升,而其中的坑却又会使你陷入奇怪BUG的噩梦,然而这也正是它极具魅力如此吸引人的地方。编程水平的高低尽显于此。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: