我对java多进程多线程的浅显理解
2024-09-02 02:20:59
linux内核调度算法--CPU时间片如何分配:
http://blog.csdn.net/russell_tao/article/details/7103012(转载) ,通过该文章我们知道了进程是有优先级的
windows的任务调度机制:
http://www.cnblogs.com/wonderKK/archive/2012/06/10/2543978.html(转载),该文章讲Windows的任务调度主要以线程为单位进行
我们用java开发的软件一般都是部署在linux操作系统上,因此主要按linux的内核调度方式来理解。也就是说每个进程都有自己的优先级,而和其中的线程的优先级和数量无关
进程:就是正在运行的程序的实例,是资源分配的基本单位。(通过任务管理器可以查看进程,一个程序可以启动多个进程,比如你可以用qq程序登陆多个qq账号,所以我理解为是程序的实例)
多进程:就是多个程序实例同时运行(同时不够严谨,可能还与电脑核数有关)
线程:运行在进程当中的运行单元,线程与资源分配无关,它属于某一个进程,并与进程内的其他线程一起共享进程的资源。
多线程:进程中存在多个相互独立或相互有协作关系的运行单元就是多线程(比如音乐播放器,一边下载音乐,一边播放音乐)
进程和线程的区别:
1)地址空间和其它资源(如打开文件):进程间相互独立,同一进程的各线程间共享。某进程内的线程在其它进程不可见。
上面的内容算是一个总体上的初步认识线程,下面再深入一些认识java中的多线程
服务器中的线程模型 https://segmentfault.com/q/1010000002998038
java中一些用到多线程的场景 http://blog.csdn.net/u012661010/article/details/76696309
(参考 百度百科,《java多线程编程深入理解》)
最新文章
- 异或链表(XOR linked list)
- Bootstrap源码分析之dropdown
- 【iOS】网络编程:上传图片到服务器
- Unity-WIKI 之 DebugLine
- Ubuntu 14.04 分区方案
- zend studio 12汉化和破解
- pm剩余要看的内容
- NDK编译路径问题
- 原生js实现tab选项卡里内嵌图片滚动特效代码
- CLR via C# - Char_String - Format
- linux学习(一个) 在unbuntu通过添加新的用户
- Python基础知识学习_Day8
- linux查看系统负载
- js原生:封装document.getElementByClassName()函数
- <;转载>;Mac下,使用sshpass让iterm2支持多ssh登录信息保存
- 【黑客免杀攻防】读书笔记6 - PE文件知识在免杀中的应用
- field-symbols: <;ATTR>; type ANY.
- Microsoft Project 常用快捷键
- zabbix实现企业微信监控报警
- Hadoop1.x目录结构及Eclipse导入Hadoop源码项目