码迷,mamicode.com
首页 > 编程语言 > 详细

Java多线程总结

时间:2014-07-01 18:07:17      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:style   java   color   使用   strong   代码   

      对Java多线程方面的东西看了很多次,每次都是浅浅的、草草的看两眼,到用的时候又是脑子一片模糊,不清楚多线程到底是怎么样一种原理,今天就专门挑时间梳理了下多线程方面所涉及到的一些东东,总结一些重要的点,如下:

      1. 在Java中,每次程序运行至少会启动2个线程,一个是main()主线程,另一个是垃圾收集线程。

      2. 包含在main()主线程中线程是子线程,主线程有可能在子线程结束前结束,并且子线程不受影响,不会因为主线程的结束而结束。

          如果要强制子线程先完成,可以在适当的地方加入代码:a.join() ,其中a是线程实例名。

      3. 线程之间,并不是优先级越高就先执行,谁先执行还是取决于谁先去的CPU的资源。main()主线程的优先级为5。

      4. 有效利用多线程的关键是,理解程序是并发执行而不是串行执行的。例如程序中有两个子系统需要并发执行(交互进行),这就需要利用多线程编程。

      5. 通过对多线程的使用,可以编写出非常高效的程序。不过请注意,如果创建太多的线程,程序执行的效率实际上是降低了,而不是提升了。因为有上下文切换时间的开销。(请记住,上下文的切换开销也很重要,如果你创建了太多的线程,CPU花费在上下文的切换的时间将多于执行程序的时间!)

      6.当多个线程共享一个资源的时候需要进行同步,但是过多的同步可能导致死锁

Java多线程总结,布布扣,bubuko.com

Java多线程总结

标签:style   java   color   使用   strong   代码   

原文地址:http://www.cnblogs.com/bigdatacluster/p/3816581.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!