gpt4 book ai didi

c++ - 将 std::thread 转换为 HANDLE 以调用 TerminateThread()

转载 作者:行者123 更新时间:2023-11-30 05:46:37 25 4
gpt4 key购买 nike

<分区>

是否可以将 C++ 中的 std::thread 线程转换或转换为 Windows 中的 HANDLE?我一直在尝试使用线程的 WINAPI 函数在 Windows 中管理线程,但我无法让它工作...

#include <thread>
#include <string>
#include <iostream>
#include <windows.h>

void Hi(std::string n){
while(true){
std::cout<<"Hi :3 "<<n<<"\n";
std::this_thread::sleep_for(std::chrono::seconds(1));
}
}

int main(void){

std::thread first(Hi, "zoditu");

first.detach();
getc(stdin);

//SuspendThread((void*)first.native_handle());
TerminateThread((void*)first.native_handle(), (unsigned long)0x00);
CloseHandle((void*)first.native_handle());

std::cout<<"No D:!!\n";
getc(stdin);

return 0;
}

但似乎什么也没做,因为线程不断在控制台中生成“Hi's”...是否有办法使用 WINAPI 来“杀死”它?

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com