J2ee是一种规范,tomcat、jboss、weblogic就是实现。JMS是一种规范,ActiveMQ是实现。

.1.1. 进程介绍线程介绍

进程:它是内存中的一段独立的内存空间。

线程:是在进程的独立运行空间中再划分的独立运行空间。

方法的空间是一样的,线程的局部变量是不一样的,不同线程调同一个方法,方法的空间是一样的,但是局部变量是不一样的。

Tomcat对每一个请求都开一个线程。

Cpu是对线程做时间切换(单核cpu或者多核cpu)。

一个应用程序就是一个进程。ps -ef可以看见的就是一个进程。有的程序启动会有多个进程,比如nginx。

一个进程中至少应该有一个线程。

启动程序的时候,其实是电脑把当前的这个程序加载到内存中,在内存中需要给当前的程序分配一段独立的运行空间。这片空间就专门负责当前这个程序的运行。不同的应用程序运行的过程中都需要在内存中分配自己独立的运行空间,彼此之间不会相互的影响。我们把每个独立应用程序在内存的独立空间称为当前应用程序运行的一个进程。进程:它是内存中的一段独立的空间,可以负责当前应用程序的运行。当前这个进程负责调度当前程序中的所有运行细节。
线程:是在进程的独立运行空间中再划分的独立运行空间。启动的QQ聊天软件,需要和多个人进行聊天。这时多个人之间是不能相互影响,但是它们都位于当前QQ这个软件运行时所分配的内存的独立空间中。在一个进程中,每个独立的功能都需要独立的去运行,这时又需要把当前这个进程划分成多个运行区域,每个独立的小区域(小单元)称为一个线程。线程:它是位于进程中,负责当前进程中的某个具备独立运行资格的空间。进程是负责整个程序的运行,而线程是程序中具体的某个独立功能的运行。
现在的操作系统基本都是多用户,多任务的操作系统。每个任务就是一个进程。而在这个进程中就会有线程。
真正可以完成程序运行和功能的实现靠的是进程中的线程。
多线程:在一个进程中,我们同时开启多个线程,让多个线程同时去完成某些任务(功能)。
(比如后台服务系统,就可以用多个线程同时响应多个客户的请求)
多线程的目的:提高程序的运行效率。

最新文章

  1. asp.net mvc3登录验证
  2. Mac系统下Android生成keystore
  3. 设置更新源和下载ferret
  4. marquee标签
  5. Validform自定义提示效果-使用自定义弹出框
  6. sublime3配置Quick-X+自动错误提示
  7. Linux下tail命令
  8. 自定义HBase的协处理器(Observer)
  9. java基础(十三)常用类总结(三)
  10. C++服务器设计(六):设备连接的生命周期管理
  11. C++_关键字
  12. 解决Nginx的connect() to 127.0.0.1:8080 failed (13: Permission denied) while connect
  13. 内核对象kobject和sysfs(2)——kref分析
  14. linux下使用自带mail发送邮件(超简单)
  15. Python基础之自定义工具类
  16. CSS盒模型深入理解
  17. Mybatis异常--There is no getter for property named 'XXX' in 'class java.lang.String'
  18. MySQL高级知识系列目录
  19. PHP操作Redis常用技巧总结
  20. 均方根误差(RMSE)与平均绝对误差(MAE)

热门文章

  1. Java中的动态代理以及Proxy类的偷瞄
  2. centos6.5下redis的安装与配置
  3. bootstrap-table接合knockout.js
  4. POJ3694-Network(Tarjan缩点+LCA)
  5. 面试题:谈谈你对hibernate的理解
  6. Webkit内核探究【2】——css简介
  7. c++通过类名动态创建对象
  8. day3笔记
  9. python多线程爬虫:亚马逊价格
  10. NGUI Checkbox与PlayerPrefs