学习日记2020/1/22

  1. 方法区在JVM中和堆一样,是线程共享
  2. 程序计数器是一个比较小的内存区域,用于指示当前线程所执行的字节码执行到了第几行,是线程隔离

学习日记2020/1/22

  1. doPost/doGet是在javax.servlet.http.HttpServlet中实现

  2. service()方法是在javax.servlet.Servlet接口中定义的

  3. servlet的生命周期分为5个阶段:
    1.加载:容器通过类加载器使用servlet类对应的文件加载servlet
    2.创建:通过调用servlet构造函数创建一个servlet对象
    3.初始化:调用init方法初始化
    4.处理客户请求:每当有一个客户请求时,容器会创建一个线程来处理该请求
    5,卸载:调用destory方法让servlet自己释放其占用的资源

  4. Servlet是线程不安全的,在servlet类中可能会定义共享的类变量,这样在并发的多线程情况下,不同成员变量的修改会引发错误

堆(heap)和栈(stock)的区别

####什么是栈
每个应用程序运行时,都有属于自己的一段内存空间,用于存放临时变量,参数传递,函数调用时的PC值的保存,这个地方叫栈
####什么是堆
所有的应用可以从一个系统*用的空间中申请供自己使用的内存,叫堆