小知识总结1

1.线程与进程的区别

  进程是一种抽象的描述,一个应用就是一个进程,例如我们的java进程,
  线程是一种具体的描述,java进程中有我们的logback-append线程,http线程,自定义实现线程等
 关系是一个大类到细分的关系

2.内核线程和用户线程

内核线程:管理文件资源,执行一些特定的功能, 文件读写,函数 执行,运行环境,属于操作系统底层层面

用户线程:线程的调度,创建都由自己决定,例如我们java应用程序进程的线程,属于程序应用层面的东西

3.Finalizer

收尾:每个类都有一个特殊的方法finalizer,它不能被直接调用,而被JVM在适当的时候调用,通常用来处理一些清理资源的工作,因此称为收尾机制。

4.DML语言

DML(Data Manipulation Language 数据操控语言)

5.SLB

负载均衡(Server Load Balance),简称SLB)

6.XMLHttpRequest 对象

是一个与后台进行数据交互的前端对象,基于Http协议,支持同步和异步请求方式


7.什么是方法回调

客户端调用服务起执行一个函数,当服务器端执行完成之后反过来调用客户端的函数
回调(个人理解):类A中任意方法中调用了类B的方法,而B方法又调用了A中某回调方法;
现实场景下:A约B一起吃饭,B有事要做,等B事情做完,让B通知一下A(回调方法就是去吃饭)
 

8.ServletRequest和HttpServletRequest的区别
servlet 本意是小程序应用的意思,
HttpServletRequest 是ServletRequest一个继承关系,利用servlet处理多种形式请求响应的一个具体实现接口
servlet理论上可以处理多种形式的请求响应形式,HTTP是其中一种。

9.在dump中,线程一般存在如下几种状态:
    1、RUNNABLE,线程处于执行中
    2、BLOCKED,线程被阻塞
    3、WAITING,线程正在等待

    4.TIMED_WAITING

10.上下文切换 (进程上下文,线程上下文)
    linux是一个多任务操作系统,它支持远大于CPU数量的任务同时运行,当然这些任务实际上并不是真的同时在运行,而是因为系统在很短的时间内,将CPU轮流分配给它们,造成多任务同时运行的错觉
    而在每个任务运行前,CPU都需要知道任务从哪里加载,又从哪里开始运行,也就是说需要系统事先帮它设置好CPU寄存器和程序计数器。
    CPU的上下文切换就是先把前一个任务的CPU上下文(也就是CPU寄存器和程序计数器)保存起来,然后加载新任务的上下文到这些寄存器和程序计数器,最后再跳转到程序计数器所指的新位置,运行新任务。

11.BPMN

BPMN:业务流程建模与标注(Business Process Model and Notation,BPMN) 

12.Maven是什么?

    Maven,是专门用于构建和管理Java相关项目的工具

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章