Java多线程随手记——开始记录
2012-09-24 00:07
190 查看
这系列的随手记用于记录下自己学习的点点滴滴,如果有错误的地方,请各位及时指正,谢谢。
多线程确实是一个会让人头疼的地方,如果这里没有弄清楚的话,那么常常会让人觉得逻辑混乱而搞不清楚状况。
首先,得清楚线程这东西究竟是个啥?
balabala~我们省略掉线程出现的那一长串历史原因。
我说下自己的理解,其实线程我把它理解成是一种轻量的进程(直接这样理解可能不是很严格,不过是为了方便自己理解)
它与进程的区别在于,进程拥有自己独立的资源,
而线程则是共享所在进程的资源(除自身堆栈外的),因此线程间的通讯比起进程通信明显容易了很多。
线程,进程调度——实际的调度方案与操作系统的具体实现有关(如windows和linux),有的是先进行进程调度,然后再线程调度。
有的操作系统是直接将线程作为最小的调度单位。
并发——在单核(同时不支持多线程)中,这个词就是浮云,CPU的利用率其实并没有实质提升,只是用了个障眼法,
通过CPU时间片调度来减少了程序操作的响应时间。
当然,在多核(或支持多线程)中,则是一种提升利用率的有效手段。
大概就想到这些,以后再慢慢编辑添加好了。
学习常会有错,请各位看官能及时指正,谢谢~
下一章:Java多线程随手记——各种锁
多线程确实是一个会让人头疼的地方,如果这里没有弄清楚的话,那么常常会让人觉得逻辑混乱而搞不清楚状况。
首先,得清楚线程这东西究竟是个啥?
balabala~我们省略掉线程出现的那一长串历史原因。
我说下自己的理解,其实线程我把它理解成是一种轻量的进程(直接这样理解可能不是很严格,不过是为了方便自己理解)
它与进程的区别在于,进程拥有自己独立的资源,
而线程则是共享所在进程的资源(除自身堆栈外的),因此线程间的通讯比起进程通信明显容易了很多。
线程,进程调度——实际的调度方案与操作系统的具体实现有关(如windows和linux),有的是先进行进程调度,然后再线程调度。
有的操作系统是直接将线程作为最小的调度单位。
并发——在单核(同时不支持多线程)中,这个词就是浮云,CPU的利用率其实并没有实质提升,只是用了个障眼法,
通过CPU时间片调度来减少了程序操作的响应时间。
当然,在多核(或支持多线程)中,则是一种提升利用率的有效手段。
大概就想到这些,以后再慢慢编辑添加好了。
学习常会有错,请各位看官能及时指正,谢谢~
下一章:Java多线程随手记——各种锁
相关文章推荐
- java多线程学习疑惑记录
- 多线程学习记录2-java5的一些线程池
- 【java学习记录】11.用多线程实现阶乘的计算过程和结果的读取(thread类ReadThread )
- 从今天开始我要开始写学习java的日常记录了。
- java基础多线程参考论坛地址记录
- Java多线程随手记——各种锁
- Java多线程学习笔记—从Map开始说说同步和并发
- [知了堂学习笔记]_Java多线程(1)-- 基本概念并开始创建多线程程序
- Android学习记录(6)—将java中的多线程下载移植到Android中(即多线程下载在Android中的使用)③
- Java的多线程编程模型5--从AtomicInteger开始(自增长实现)
- Java的多线程编程模型5--从AtomicInteger开始
- 记录一个java多线程的使用
- Java多线程学习记录
- (java)整数数组中求最大连续子序列之和,并且记录开始和结束位置
- Android学习记录(6)—将java中的多线程下载移植到Android中(即多线程下载在Android中的使用)③
- 业务需要,IOS转到JAVA 安卓端开发,开始记录一些小知识点
- java多线程学习记录
- 今年大二,要开始java的学习了,听前辈说记录一下自己的学习过程会有一些好处
- [置顶] 学习java记录博客开始第一天
- (java)整数数组中求最大连续子序列之和,并且记录开始和结束位置