我有一个产生多个子进程的应用程序。在启动子进程之前,我创建了一个日志文件的stdOut和stdErr句柄(例如,如果我要启动procA,我将创建logA.log的句柄)。我在子进程上设置了这些句柄。

通过查看ProcExplorer,我可以看到每个子进程都有每个日志文件的句柄(因此procA拥有logA,logB等的句柄)。这会产生以后的问题。

我希望能够看到procA创建logB的句柄的时间。有什么想法吗?

最佳答案

一种可能的解决方案是,文件句柄在任何子进程之间共享,因为它们是由父进程创建的。

这是我能看到的唯一解决方案,因为如果您进行设计以便只有一个var来处理它,那么我看不到在每个子进程中如何拥有多重处理(每个日志文件一个)。

为什么不在子进程中创建句柄?我知道它的确对这个问题做出了昂贵的回应,但是很显然,如果procA只需要logA的句柄,那么最好在子进程procA中创建logA的句柄。

关于c++ - 如何中断句柄的创建?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/649886/

10-13 07:00