進程和線程是我們平時接觸的比較多的兩個概念,特別是線程機制,很多語言原生就支援它。前段時間主要示範了下linux下進程和線程的建立,這篇文章對其建立的過程做一個簡單的分析,錯誤之處,還請您斧正。 在linux下,線程其實就是一個輕量級的進程,所以其實現都是通過調用給do_fork函數傳入不同的參數實現的。先來看下這幾個函數:Code highlighting produced by Actipro CodeHighlighter
線程並發會引發一些難以發現的錯誤,現在就來看一個簡單的線程的並發導致的問題,首先來看下面程式,程式很簡單,就是建立了3個線程,第一個線程對i和count加1,第二個線程對j和count加1,第三個線程對k和count加1,i,j,k,count初始化都為0,這樣的華,按照邏輯來說,最後i+j+k = count: Code highlighting produced by Actipro CodeHighlighter
轉載地址:http://blog.163.com/seven_7_one/blog/static/162606412201092713131191/QT裡的函數void Q_INIT_RESOURCE ( name )Initializes the resources specified by the .qrc file with the specified base name. Normally, Qt resources are loaded automatically at
最近做一個映像問題的程式,需要對一幅比較大的圖進行遍曆,將每個像素資訊提取出來,用了BitMap及BitmapData。由於圖片很大(2000*1000),每次操作都要等很久,全套操作下來居然需要12秒還多,代碼最佳化了好多次,始終沒有質的改變,今天抱著試一試的態度將迴圈內的對象屬性訪問全部提取到迴圈外,速度居然一下就上去了,表達能力有限,這裡直接看代碼:沒有最佳化Code highlighting produced by Actipro CodeHighlighter
這段時間打算把以前學的東西好好做個總結,免得總是學一樣,忘一樣。Linux下的C編程,就從利用fork開闢一個新的進程開始吧。 最開始接觸fork的時候,覺得這個函數確實很有意思,一次調用,兩次返回,看看下面這段程式: Code highlighting produced by Actipro CodeHighlighter