建立新的执行绪的API函数是CreateThread;
hThread = CreateThread (&security_attributes, dwStackSize, ThreadProc,pParam, dwFlags, &idThread) ;//ThreadProc函数名
第一个参数是指向SECURITY_ATTRIBUTES型态结构的指针。在windowsNT中为NULL(引用可代替)。
第二个参数是用于新执行绪的初始堆栈大小,预设值为0。(需要动态分配堆栈)。
CreateThread 的第三个参数是指向执行绪函数的指针。函数名称没有限制,
但是必须以下列形式申明:
DWORD WINAPI ThreadProc (PVOID pParam) ;//ThreadProc函数名
CreateThread 的第四个参数为传递给ThreadProc 的参数。这样主执行绪和
从属执行绪就可以共用资料。
CreateThread 的第五个参数通常为0,但当建立的执行绪不马上执行时为
旗标CREATE_SUSPENDED。执行绪将暂停直到呼叫ResumeThread 来恢复执行绪的
执行为止。
第六个参数是一个指标,指向接受执行绪ID 值的变数。
ps:
大多数Windows 程式写作者喜欢用在PROCESS.H 表头档案中宣告的C 执行
时期程式库函数_beginthread。
它的语法如下:
hThread = _beginthread (ThreadProc, uiStackSize, pParam) ;
它更简单,对於大多数应用程式很完美,这个执行绪函式的语法为:
void __cdecl ThreadProc (void * pParam) ;