创建线程的函数:
HANDLE CreateThread(
LPSECURITY_ATTRIBUTES lpThreadAttributes, // 使用默认安全形态,设为NULL,表明不可被子线程继承
SIZE_T dwStackSize, // 初始栈大小,默认值0表示使用与调用该函数的线程相同的栈大小
LPTHREAD_START_ROUTINE lpStartAddress, //指向线程函数的指针,即函数名
LPVOID lpParameter, // 向线程函数传递的参数,是一个指向结构的指针 ,不需传递参数时,为NULL
DWORD dwCreationFlags, // 创建后的状态,0表示立即激活
LPDWORD lpThreadId // 保存线程ID,设为NULL表示不保存
);
LPSECURITY_ATTRIBUTES lpThreadAttributes, // 使用默认安全形态,设为NULL,表明不可被子线程继承
SIZE_T dwStackSize, // 初始栈大小,默认值0表示使用与调用该函数的线程相同的栈大小
LPTHREAD_START_ROUTINE lpStartAddress, //指向线程函数的指针,即函数名
LPVOID lpParameter, // 向线程函数传递的参数,是一个指向结构的指针 ,不需传递参数时,为NULL
DWORD dwCreationFlags, // 创建后的状态,0表示立即激活
LPDWORD lpThreadId // 保存线程ID,设为NULL表示不保存
);
BOOL CloseHandle( HANDLE hObject );//HANDLE hObject 对象句柄,CreatThread的返回值
_beginThread与_endThread函数更为安全,避免内存泄漏问题,主要是C标准库中的全局变量。