【发布时间】:2012-02-20 01:01:39
【问题描述】:
我正在处理一个多线程进程,该进程分叉执行另一个进程。有时,如果执行文件不存在,fork 可能会出错。由于这个进程在 fork 之前运行了多个线程,我有几个问题:
- 线程是否被复制到派生进程。
-
使用多线程进程处理来自 fork 的错误的最佳做法是什么。例如:
/* in a multithreaded process */ pid = fork(); if(pid == 0) { execlp(filename, filename, NULL); fprintf(stderr, "filename doesn't exist"); /* what do i do here if there's multiple threads running from the fork? */ exit(-1); }
【问题讨论】:
标签: c multithreading pthreads fork