我正在研究 gcc ,我想知道这是否可能:
我有一个函数(不是main,而是aLocalFn),我在其中声明了一个局部变量。然后我将此本地参数作为线程参数传递。可行吗?或者有可能(取决于首先运行的内容)aLocalVar 在 threadFunction 运行之前会丢失,并且引用 idxPtr 将指向无意义?
int *threadFunction(void *idxPtr){
int rec_idx=(int) *idxPtr;
//work in the thread with this variabel rec_idx
}
int aLocalFn(){
int aLocalVar=returnsRecordIndex();
pthread_create(&thread_id,&attr_detached,threadFunction, &aLocalVar)!=0)
return 0;
}
感谢您的帮助