当前位置: 技术问答>linux和unix
linux 多线程函数之间乱串的奇怪问题
来源: 互联网 发布时间:2016-11-22
本文导语: void* thread(void* arg) { c0=openSP(0); 。。。。。。。。 } void* thread1(void* arg) { c1=openSP(1); 。。。。。。。。。。 } void* thread2(void* arg) { c2=openSP(2); 。。。。。。。。。。。。 } void* thread3(void* arg) { c3=openSP(3); 。。...
void* thread(void* arg)
{
c0=openSP(0);
。。。。。。。。
}
void* thread1(void* arg)
{
c1=openSP(1);
。。。。。。。。。。
}
void* thread2(void* arg)
{
c2=openSP(2);
。。。。。。。。。。。。
}
void* thread3(void* arg)
{
c3=openSP(3);
。。。。。。。。。。 }
main() :
pthread_t thd0,thd1,thd2,thd3,thd4,thd5,thd6,thd7;
int ret;
//ret=pthread_create(&thd0,NULL,thread,NULL);
ret=pthread_create(&thd1,NULL,thread1,NULL);
//ret=pthread_create(&thd2,NULL,thread2,NULL);
//ret=pthread_create(&thd3,NULL,thread3,NULL);
//ret=pthread_create(&thd4,NULL,thread4,NULL);
//ret=pthread_create(&thd5,NULL,thread5,NULL);
//ret=pthread_create(&thd6,NULL,thread6,NULL);
//ret=pthread_create(&thd7,NULL,thread7,NULL);
}
按道理说,我只会进入thread1的函数里边,但是我每个线程函数都设置了断点,尽然随机的进入了thread2,thread5,thread6.。。。。。
我线程函数里边,thread到thread7里边都是大同小异的,,而且里边没有打开线程过。。。都是函数处理,就是打开的串口不同而已。。。为什么有这样的效果。。。
|
把你编译的可执行程序及目标文件都删除了重新编译就好使了