黑马程序员技术交流社区
标题: 刚看完多线程,总结一下知识点 [打印本页]
作者: 文盲庄稼汉 时间: 2014-8-3 17:41
标题: 刚看完多线程,总结一下知识点
进程是一个正在执行的程序。
线程是每一个进程中的独立的控制单元,该控制单元就是程序的执行路径。
每个进程至少有一个线程。
在java中要想实现多线程,有两种手段,一种是继续Thread类,另外一种是实现Runable接口。
代码框架就不说了,大家都孩应该知道。不懂得去看毕老师的视频。讲的很详细的。
Thread和Runnable的区别:
如果一个类继承Thread,则不适合资源共享。但是如果实现了Runable接口的话,则很容易的实现资源共享。
大家可以想象,如果是一个买票系统的话,如果count表示的是车票的数量的话,那么我们必须要用Runnable借口来实现共享数据。
总结一下吧:
实现Runnable接口比继承Thread类所具有的优势:
1):适合多个相同的程序代码的线程去处理同一个资源
2):可以避免java中的单继承的限制
3):增加程序的健壮性,代码可以被多个线程共享,代码和数据独立。
所以,本人建议大家劲量实现接口。
接下来线程的强制执行:join();休眠:sleep();wait();唤醒:notify();
虽然线程执行有优先级,但是请不要误以为优先级越高就先执行。谁先执行还是取决于谁先去的CPU的资源、
还有线程的同步,死锁。包括同步代码块,同步函数。同步的锁的问题。非静态的锁是this,静态放发的所是Class。还有单例设计模式的书写。
好像就这么多,大家在看看有没有什么遗漏的。补充补充。大家多交流学习,争取早日加入黑马!!!
作者: dispensable 时间: 2014-8-3 17:50
:victory:给你点32个赞,主要是线程间的通信,理解这个就算理解得不错了
作者: HPU--spring87 时间: 2014-8-3 23:12
写的不错,,,,
作者: dreamseekerkun 时间: 2014-8-3 23:19
我也刚看完多线程,总结的不错。
作者: shuimu_88 时间: 2014-8-3 23:20
有收获!
作者: —Jimmy— 时间: 2014-8-4 10:17
多总结真好,我也要多总结一下:)
作者: 新航向 时间: 2014-8-4 10:54
还没看到,先收藏以后验证,多谢分享
作者: 大成哥 时间: 2014-8-4 11:06
不错~!赞一个!
作者: fxwb2005 时间: 2014-8-4 11:09
谢谢分享,顶一个!~
作者: 会飞De石头 时间: 2014-8-4 11:28
再补充点:
1、由于java是单继承,Thread在某些情况下会无法实用;
2、关于同步锁,必须是使用的是同一把锁;
作者: chaimk 时间: 2014-8-4 11:45
线程这一块真正用好还是得去项目中实践一下。。。
作者: LFW 时间: 2014-8-4 12:22
lock没讲。Lock代替了synchronized,Condition代替了同步锁。不细讲。
作者: 龙帅 时间: 2014-8-4 13:14
感谢楼主的总结
作者: 我行我SHOW‰ 时间: 2014-8-4 13:50
感谢楼主的总结~~~
作者: 渴望学习 时间: 2014-8-4 15:17
路过~~~~
作者: gm1314 时间: 2014-8-4 15:32
飘过!!!!!!!!!!!
作者: huoshao008 时间: 2014-8-4 16:26
路过学习了.
作者: GoodBoy123 时间: 2014-8-4 16:29
jdk1.5之后提供的全新的锁机制来解决数据安全问题,特点是一个锁可以持有多个锁对象。
作者: tc庄稼汉 时间: 2014-8-4 16:57
基本的知识点都覆盖了:lol
作者: 莫忘本心 时间: 2014-8-4 19:46
刚好弄完多线程 来看看
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |