相关疑难解决方法(0)

在多线程应用程序中,如何根据线程将stderr&stdout重定向到单独的文件中?

我有多线程应用程序,我正在创建这样的线程:

int main(int argc,char *argv[])
{
    pthread_t thread_id[argc-1];
    int i;
    struct parameter thread_data[argc-1];
    int status;
    for(i=0;i<argc-1;i++)
    {
      thread_data[i].ip_filename = argv[i+1];
      strcpy (thread_data[i].op_filename,argv[i+1]);
      strcat (thread_data[i].op_filename,".h264");
    }

    for(i=0;i<argc-1;i++)
    {
      pthread_create (&thread_id[i], NULL , &thread_function, &thread_data[i]);
    }      
}
Run Code Online (Sandbox Code Playgroud)

现在,在线程的功能,我想重定向stderrstdout在一个单独的文件为每个线程.像线程日志文件的东西.

我怎么能这样做?

编辑:

如果特定于线程的打印件可以显示在不同的终端上..?我的意思是如果有2个线程则打开2个终端并在不同终端上打印每个线程数据.

c linux pthreads

3
推荐指数
2
解决办法
5796
查看次数

标签 统计

c ×1

linux ×1

pthreads ×1