高併發與多執行緒網路學習筆記(小技巧)

2022-07-12 06:51:10 字數 733 閱讀 3825

stream.of("f1","f2").foreach(n->new thread().start());

timeunit.second.sleep()//好過thread.sleep(),可控時間級別,增強可讀性

可以用於程式中斷後釋放資源

可以獲取到cpu等本機資訊

runtime.getruntime().addshutdownhook(new thread(){})

執行緒自己本身無法丟擲異常,所以有一些runtimeexception無法捕獲,如2/0

thread.setuncaughtexceptionhandler(介面)

arrays.stream(thread.currentthread().getstacktrace()).filter(e->!e.isnativemethod()).foreach(

e-> system.out.println(e.getclassname()+":"+e.getmethodname()+":"+e.getlinenumber())

outer:

while(true)

}

多執行緒與高併發

blocked 鎖池 timed waiting 定時等待 waiting 等待 terminated 禁止指令重排序 記憶體屏障 在單例雙重檢查中,不加會出現使用半初始化的值,也就是還未附初始值,指令重排導致的 類載入與指令重排的知識 public class spinlock while fla...

多執行緒高併發程式設計學習筆記三

高併發程式設計學習筆記三 併發容器 佇列 1.map set的選擇使用 1.不需要執行緒安全 hashmap 無序的key value 1.建立table來儲存entry 2.hashcode key 得到鍵值對應該存放的位置 3.用equal方法比較key,如果相同覆蓋資料,如果不同接到下面形成鍊...

多執行緒與高併發 一

建立乙個執行緒的兩種方式 繼承threadclass mythread extends thread newmythread start 實現runnable介面class mythread implements runnable newthread new myrun start 面試時候有時候會...