python用subprocess实现多进程并发

            for cmd in cmd_list:
                p = subprocess.Popen(cmd, shell=True)
                logging.debug("cmd: %s" % cmd)
                p_list.append(p)
            timeout = 2 * int(gl.press_time)
            deadline = time.time() + timeout 
            poll_seconds = 5
            ret = 0
            for p in p_list:
                while time.time() < deadline and p.poll() is None:
                    logging.debug("cir")
                    time.sleep(poll_seconds)
                if time.time() >= deadline:
                    logging.critical("time out")
                    os.killpg(p.pid, signal.SIGUSR1)
                    ret = -1
            if ret == -1:
                return

版权声明:本文为weixin_42219542原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。