C++澶氱嚎绋媌eginthread()鍑芥暟鎬庝箞浣跨敤
_beginthread()
鍑芥暟鏄疌璇█涓殑澶氱嚎绋嬪垱寤哄嚱鏁帮紝鐢ㄤ簬鍒涘缓涓€涓柊鐨勭嚎绋嬨€備互涓嬫槸_beginthread()
鍑芥暟鐨勪娇鐢ㄦ柟娉曪細
#include <iostream>
#include <process.h> // 鍖呭惈 _beginthread() 鍑芥暟鐨勫ご鏂囦欢
// 瀛愮嚎绋嬪嚱鏁?/span>
void ThreadFunc(void* arg) {
std::cout << "This is a child thread." << std::endl;
}
int main() {
// 鍒涘缓涓€涓柊绾跨▼
unsigned int threadId;
intptr_t handle = _beginthread(ThreadFunc, 0, nullptr);
if (handle == -1) {
std::cerr << "Failed to create a new thread." << std::endl;
return 1;
}
// 绛夊緟瀛愮嚎绋嬬粨鏉?/span>
_endthreadex(0);
std::cout << "Main thread exits." << std::endl;
return 0;
}
鍦ㄤ笂闈㈢殑绀轰緥涓紝鎴戜滑棣栧厛鍖呭惈浜?code><process.h>澶存枃浠讹紝鐒跺悗瀹氫箟浜嗕竴涓瓙绾跨▼鍑芥暟ThreadFunc
銆傚湪main()
鍑芥暟涓紝鎴戜滑璋冪敤_beginthread()
鍑芥暟鍒涘缓浜嗕竴涓柊绾跨▼锛屽苟灏嗗瓙绾跨▼鍑芥暟ThreadFunc
浣滀负鍙傛暟浼犻€掔粰瀹冦€?code>_beginthread()鍑芥暟鐨勭涓€涓弬鏁版槸瑕佹墽琛岀殑瀛愮嚎绋嬪嚱鏁帮紝绗簩涓弬鏁版槸鍫嗘爤澶у皬锛?琛ㄧず浣跨敤榛樿鍫嗘爤澶у皬锛夛紝绗笁涓弬鏁版槸浼犻€掔粰瀛愮嚎绋嬪嚱鏁扮殑鍙傛暟銆?code>_beginthread()鍑芥暟杩斿洖涓€涓彞鏌勶紝鍙互鐢ㄤ簬鍚庣画鎿嶄綔銆?/p>
鍦ㄤ富绾跨▼涓紝鎴戜滑浣跨敤_endthreadex()
鍑芥暟绛夊緟瀛愮嚎绋嬬粨鏉熴€傜劧鍚庯紝涓荤嚎绋嬭緭鍑轰竴鏉℃秷鎭苟閫€鍑恒€?/p>
璇锋敞鎰忥紝_beginthread()
鍑芥暟鏄疌璇█鐨勫嚱鏁帮紝鍥犳鍦–++涓娇鐢ㄦ椂闇€瑕佸寘鍚?code><process.h>澶存枃浠讹紝骞朵娇鐢?code>std::cout鍜?code>std::cerr杈撳嚭娑堟伅銆傚彟澶栵紝_beginthread()
鍑芥暟杩斿洖鐨勫彞鏌勫彲浠ョ敤浜庡悗缁搷浣滐紝渚嬪绛夊緟绾跨▼缁撴潫鎴栧叧闂嚎绋嬪彞鏌勭瓑銆?/p>