C++ 多线程编译出现问题

adreese 2008-04-04 12:18:07
#include <pthread.h>
#include "iostream.h"



void* tprocess1(void* args){
while(1){
cout << "tprocess1" << endl;
}
return NULL;
}

void* tprocess2(void* args){
while(1){
cout << "tprocess2" << endl;
}
return NULL;
}

int main(){
pthread_t t1;
pthread_t t2;
pthread_create(&t1,NULL,tprocess1,NULL);
pthread_create(&t2,NULL,tprocess2,NULL);
pthread_join(t1,NULL);
return 0;
}

错误提示:
Compiling...
2.cpp
Linking...
2.obj : error LNK2001: unresolved external symbol __imp__pthread_join
2.obj : error LNK2001: unresolved external symbol __imp__pthread_create
Debug/多线程.exe : fatal error LNK1120: 2 unresolved externals
执行 link.exe 时出错.

多线程.exe - 1 error(s), 0 warning(s)
...全文
247 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2008-04-23
  • 打赏
  • 举报
回复
VC下的C语言多线程
http://blog.sina.com.cn/s/blog_483452da0100978c.html
hengshan 2008-04-04
  • 打赏
  • 举报
回复
什么编译器?好像是unix?

不过这个是连接问题。
需要在工程文件里面加上多线程的编译选项,如果是unix要在makefile里面加。
csdn5211 2008-04-04
  • 打赏
  • 举报
回复
另外,这是链接问题,不是编译问题。
  • 打赏
  • 举报
回复
VC ?
你得增加pthread的lib
sunote 2008-04-04
  • 打赏
  • 举报
回复
include "iostream.h"
怎么会这样写.把你的makefile那出来看看
sunote 2008-04-04
  • 打赏
  • 举报
回复
连接参数里面需要指出增加pthread的lib,并且要有搜索路径
laolaoliu2002 2008-04-04
  • 打赏
  • 举报
回复
g++ 2.cpp -o 2 -lpthread
racket2008 2008-04-04
  • 打赏
  • 举报
回复
需要指明连接pthread库,可用-lpthread指定,同时要设定库所在的目录:-L路径。
gccli 2008-04-04
  • 打赏
  • 举报
回复
需要加编译选项 -lpthread
kuchao 2008-04-04
  • 打赏
  • 举报
回复
c++ -lpthread 2.cpp
linlan999 2008-04-04
  • 打赏
  • 举报
回复
o

64,684

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧