公平所:執行緒按照實現定義好的順序執行,保證執行順序的正確性,但是效能會有所降低
非公平所: 執行緒為了效能好,執行的順序可能實現定義好的不一樣,非公平鎖的吞吐量要比公平鎖大
synchronized和lock都屬於非公平所
可重入鎖又成為遞迴鎖
**public synchronized void method1()
public synchronized void method2()
當執行緒進入方法一時,也會進入方法二,因為他們兩個持有同一把鎖,這就是可重入鎖
可重入鎖最大的好處就是避免死鎖
死鎖產生的條件:
1.迴圈等待
2.不可剝奪
3.資源獨佔
4.保持申請
自旋鎖spinlock 阻塞的時候不會一直等候,而是邊做自己的事情邊等待鎖的釋放
readwritelock 讀寫鎖 讀的時候,不互斥,寫的時候,互斥
可重定位目標檔案
目標檔案有三種形式 1.可重定位目標檔案 2.可執行目標檔案 3.共享目標檔案 編譯器和彙編器生成可重定位目標檔案 共享目標檔案,聯結器生成可執行目標檔案。在這裡我們首先介紹可重定位目標檔案。可重定位目標檔案 包含二進位制 和資料,可以在編譯時與其他可重定位目標檔案合併起來,建立乙個可執行目標檔案。...
可重定位目標檔案
可重定位目標檔案經由源程式預處理,編譯,彙編之後得到的檔案。其中包括不可讀的二進位制 擴充套件名為.o。現有兩個模組的 main.c int sum int a,int n int array 2 int main sum.c int sum int a,int n return s 一.在linu...
7 4 可重定位目標檔案
下圖展示了乙個典型的elf可重定位目標檔案的格式。elf頭 elf header 以乙個16位元組的序列開始,這個序列描述了生成該檔案的系統的字的大小和位元組順序,elf頭剩下的部分包含幫助鏈結器語法分析和解釋目標檔案的資訊。其中包括elf頭的大小,目標檔案的型別 如可重定位,可執行性,或者共享的 ...