2017
11-22
11-22
python 并发subprocess.Popen的坑
表现一个父进程里多个线程并发地调用subprocess.Popen来创建子进程的时候,会有几率出现Popen长时间不返回的情况.这个问题是由于fd被多个子进程同时继承导致的.重现问题的代码下面这个小程序启动2个线程,每个线程各自(通过subprocess.Popen)启动一个子进程,一个子进程执行echo1后就直接返回;另一个子进程启动后,sleep0.03秒后返回.程序里统计了2个调用Popen花的时间,运行后可以发现,ech...
继续阅读 >