// 多執行緒--原子操作(使用者模式下的同步操作).cpp : 定義控制台應用程式的入口點。
//vs2010上編譯通過
#include "stdafx.h"
#include
#include
#include
using namespace std;
volatile long g_ntatolcount; //宣告為volatile,在多執行緒中防止編譯器優化資料,將資料放到暫存器中,而是直接到記憶體中去讀寫,防止出現錯誤結果
const dword thread_count=10;
dword winapi childthreadfunc(lpvoid lplparam);
int _tmain(int argc, _tchar* argv)
waitformultipleobjects(thread_count, handle, true, infinite);
cout<
} while (num--);
cout<
//說明:按道理,do/while迴圈總共執行個10次,每個迴圈裡都建立10個子執行緒去遞增g_ntatolcount,如果結果g_ntatolcount為100,則說明原子操作執行成功!
Windows核心程式設計
內容簡介 這是一本經典的windows核心程式設計指南,從第1版到第5版,引領著數十萬程式設計師走入windows開發陣營,培養了大批精英。作為windows開發人員的必備參考,本書是為打算理解windows的c和c 程式設計師精心設計的。第5版全面覆蓋windows xp,windows vist...
WINDOWS核心程式設計 核心物件
今天想把看的第三章的心得寫下來。這章主要介紹了核心物件。在windows中,核心物件是由作業系統來管理,儘管使用者能夠建立它,但是在建立之後,使用者對該核心物件的操作都是委託給作業系統。通常使用者建立和使用的物件分為 使用者物件 如 hicon createicon prama gdi物件函式以及核...
Windows核心程式設計 核心物件
每個核心物件只是核心分配的乙個記憶體塊,只能由核心訪問.該記憶體塊是一種資料結構,它的成員負責維護物件的各種資訊,由得物件型別相同,但大多數不同,比如程序物件有個程序id,乙個基本優先順序,乙個退出 檔案物件則有乙個位元組位移,乙個共享模式,乙個開啟模式 如果核心控制代碼傳遞給另外乙個程序,那麼這另...