其實書的全名叫《程序員的自我修養---鏈接、裝載與庫》,只是我不敢將程序員和自己聯系起來,一來自己還未到軟件公司工作,二來今年的確一句都沒寫過,本來打算寫一個四角查字法,可是還有很多難點,就此擱淺。
的確是本好書,像我這樣的菜貨在看完書后居然輕松理解了信號量、互斥量、臨界區。(記得以前上學時信號量可是很繞人的,臨界區的題目更不是我這種智商的人能一下子能會做的題目)
不信,你可以看:
互斥量:資源僅同時允許一個線程訪問,但和信號量不同的是,信號量在整個系統可以被任意線程獲取并釋放,也就是說,同一個信號量可以被系統中的一個線程獲取之后而由另一個線程釋放。而互斥量則要求哪個線程獲取了互斥量,哪個線程就要負責釋放這個鎖,其他線程越俎代皰去釋放是無效的。
臨界區:臨界區的作用范圍僅僅限于本進程,其他進程無法獲取該鎖。除此之外,臨界區具有和互斥量相同的性質。
是不是寫的簡單而又精辟?
如果是在windows上寫程序,可能知不知道鏈接、裝載、庫這些概都無所謂,(以前大學的時候用的都是windows下的可視化編譯工具如visual studio),但是如果其他平臺的話可能就會有點煩惱,比如會看到有個人這樣編譯一個程序:gcc -o init menu.c help.c -pthread,這個pthread是個什么東西?明明menu.c中已經包含頭文件<pthread.h>啦?
繼《orange's .....》之后,我愛的第二本書。云風也很推薦哦,還為它寫了序。

|