void function1(){this
ThreadArg pArg;//他是个结构体指针线程
pArg->s_1 = 1;指针
pArg->s_2 = this;//关键就是这个,我是想把当前实例的指针让线程去作一些操做。code
int ret = pthread_create( &m_id, NULL, function2, (void *)pArg);io
}function
void * function2( void * p){thread
//code....co
//调用this的某些public结构体
}参数
结果悲剧了。。。。。时而报错,时而不报错。。。每次报错还不同。原来就是pArg的声明周期结束了,致使this指针有时可能被覆盖有时可能没有,因此一切都是不肯定的。因而把这个线程参数放在堆里面了,就没事了。。。之后不能再这样马虎了!