原创 進程、線程同步互斥學習 —— 臨界區

關於臨界區,MSDN是這樣介紹的: Critical Section ObjectsA critical section object provides synchronization similar to that provided b

原创 淺談Interlocked operations

Interlocked系列的原子操作函數,你瞭解到什麼程度呢? 什麼是原子操作 原子(atom)本意是“不能被進一步分割的最小粒子”,而原子操作(atomic operation)意爲"不可被中斷的一個或一系列操作" 。 非原子操作會

原创 進程、線程同步互斥學習 —— 互斥器

關於互斥器,先看MSDN介紹: Mutex ObjectsA mutex object is a synchronization object whose state is set to signaled when it is not

原创 進程、線程同步互斥學習 —— 事件

關於事件,先看MSDN介紹: Event Objects Anevent object is a synchronization object whose state can be explicitly set to signaled b

原创 進程、線程同步互斥學習 —— 信號量

關於信號量,先看MSDN介紹: Semaphore ObjectsA semaphore object is a synchronization object that maintains a count between zero an

原创 MFC六大關鍵技術之仿真學習筆記(五)

            前面所有的基礎,你可以說你覺得雲裏霧裏的,所謂的"類別型錄"網到底可以幹什麼,我們爲什麼需要花費這麼多功夫去構建呢,在這一節我會慢慢道來。 我們希望在程序運行過程中動態生成某種"類別型錄"中的對象,如 CWnd 我

原创 淺談大小端存儲

最近學習SOCKET,將大小端存儲做一個總結: 小端(Big-Endian)模式:  內存的低地址存數據的低位,內存的高地址存數據的高位。 大端(Little-Endian)模式:內存的低位存數據的高位,內存的高地址存數據的低位。 首先

原创 MFC六大關鍵技術之仿真學習筆記(八)

       前一節寫到,在類關係中我們已經建立了一種消息映射的機制,消息具體是如何在類中傳遞的,是一個值得我們去研究的問題,待我一一道來。 *Command Routing(命令傳遞) 實現消息的縱向流動,我們並不希望消息只呈單線發展

原创 MFC六大關鍵技術之仿真學習筆記(七)

       從學習Windows的消息機制學習到MFC的消息映射,這是我最喜歡的一節。在Win32編程中,你回去定義各種消息,在WndProc中通過switch ..case..進行消息的分類處理。帶着這種思維走進MFC,你會發現MFC

原创 MFC六大關鍵技術之仿真學習筆記(六)

            下面到了MFC的Persistence(永久保存)機制。無非就是我們想要把對象永久保存下來,方法當然是寫入文件中咯,MFC有一套Serialize機制。 當然MFC仍提供了2個實現的Macro : DECLARE_

原创 float的內存佈局

我們在代碼中常常用到float與double,相比於int等類型,很多人並不知道float與double的存儲方式。 浮點型的二進制表示: 我們先來看看十進制轉二進制: 對於一個浮點型 101.0625f 整數部分: 101 / 2 ··

原创 MFC六大關鍵技術之仿真學習筆記(四)

     這一節我認爲挺簡單的,IsKindOf無非就是判斷某個對象是否是某種類或者繼承於某種類。 *IsKindOf(運行時類型識別)      因爲有了前面的“類型識別”網,我們可以很方便進行“同宗”路線的追蹤,當然我們也可以"對類