1. 程式人生 > 其它 >RISC-V MCU應用教程之GPIO操作

RISC-V MCU應用教程之GPIO操作

1.什麼是JUC

java.util 工具包 包、類

業務:普通的執行緒程式碼 Thread

Runnable 沒有返回值,效率相對callable要低

2.執行緒和程序

程序:一個程式。 (qq.exe,music,程式的集合)

一個程序往往包含多個執行緒,至少包含一個

java預設有幾個執行緒?2個: main、GC

執行緒:開了一個程序typora,寫字,自動儲存(執行緒負責的)

對於java而言:Thread、Runnable、callable

java真的可以開啟執行緒嗎 開不了 它只是用本地方法嗎,呼叫底層的C++,java無法直接操作硬體

併發程式設計:併發、並行

併發(多執行緒操作同一個資源)

  • CPU一核,模擬多條執行緒,快速交替

並行(多個人一起行走)

  • CPU多核,多個執行緒可以同時執行

併發程式設計的本質:充分利用CPU的資源

執行緒有幾個狀態

 public enum State {
//新生
        NEW,

//執行
        RUNNABLE,

//阻塞
        BLOCKED,

//等待,死死地等
        WAITING,

//超時等待
        TIMED_WAITING,

//終止
        TERMINATED;
    }

wait\sleep 區別

  1. 來自不同的類

    wait==》object

    sleep==>Thread

  2. 關於鎖的釋放

    wait會釋放鎖。sleep睡覺了,抱著鎖睡覺,不會釋放!

  3. 使用範圍不同

    wait:必須在同步程式碼塊中

    sleep:可以在任何地方睡

  4. 是否需要捕獲異常

    wait不需要捕獲異常

    sleep必須捕獲異常