windows里面进程线程控制应该用什么头文件
linux下写的这段代码pthread_t id1,id2; windows下一直报错,估计是头文件的问题
请问windows里面进程线程控制应该用什么头文件?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
linux下写的这段代码pthread_t id1,id2; windows下一直报错,估计是头文件的问题
请问windows里面进程线程控制应该用什么头文件?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(13)
嗯 谢谢啦~~
ZThread,很有java的多线程的风格,开源的,自己下来编译下就是了
是什么???
有个跨平台的线程库
+1
哦 我试试
好像不行啊 具体库怎么写?
http://sourceware.org/pthreads-win32/ 下的对么?
windows下如果要使用pthread_t,你得用pthread-win32的库
也就是说有关线程的那段代码得改改?要不你帮帮我? /*pthread1*/ if((ret=pthread_create (&id1,NULL,(void *) sdmsg,NULL)) != 0) { perror("thread1"); exit(1); } if((ret=pthread_create (&id1,NULL,(void *) recivemsg,NULL)) != 0) { perror("thread2"); exit(1); } pthread_join(id1,NULL); pthread_join(id2,NULL); 帮忙改改?
你不是想在WINDOWS 下直接用LINUX下那套线程的代码吧
SDK 不一样的
#include <windows.h> //使用多线程必须的
#include <iostream> //这是观看效果用的
using namespace std;
DWORD WINAPI MTOne(LPVOID param);
DWORD WINAPI MTTwo(LPVOID param);
DWORD WINAPI MTOne(LPVOID param){
while(true)
{
Sleep(1000);
cout<<"hi! ";
}
//一旦返回,这个线程就结束了。
return 0;
}
DWORD WINAPI MTTwo(LPVOID param){
while(true)
{
Sleep(1000);
cout<<"joy! ";
}
return 0;
}
int main(int argc, char* argv[])
{
int inp=0;
HANDLE hand=CreateThread (NULL, 0, MTOne, (void*)&inp, CREATE_SUSPENDED, NULL);
HANDLE hand2=CreateThread (NULL, 0, MTTwo, (void*)&inp, CREATE_SUSPENDED, NULL);
while(true){
cin>>inp;
if(inp==1) //运行线程
{
ResumeThread(hand);
ResumeThread(hand2);
}
else //暂停线程
{
SuspendThread(hand);
SuspendThread(hand2);
}
};
//终止线程
TerminateThread(hand,1);
TerminateThread(hand2,1);
return 0;
}
已经包含这个头文件了 、 但是编译还是通不过啊
pthread_t 这个是POSIX的
WIN的不一样
windows.h