我正在为来自客户端的每个请求创建一个线程以获取服务器上的文件。线程函数通常会得到一个void指针;但我需要给它一个字符指针作为参数,并希望它由线程函数填充文件名。如何更改线程函数内的void *参数
代码创建一个线程:
pt_ret = pthread_create(&thread_id, NULL, getfiles, (void*) thread_buff);
pthread_join(thread_id, pt_ret);
业。线程函数:
void *getfiles(void *ptr) {
/* ... */
char buff[256]; // populating that local buffer with the file names
// ptr should be as a return of buff
}
线程完成后,我曾尝试不同的事情,但每一次,thread_buff就像变成“Q”。
没有必要在C中抛出任何指向'void *'的指针。 – 2012-03-13 14:28:33
请问您可以发布更多代码吗? – Jay 2012-03-13 14:49:59