小知識總結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相關項目的工具

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