Warten Sie, bis ein bestimmter Prozess (die Erkenntnis der "pid") end

Habe ich dieses:

def get_process():
    pids = []
    process = None
    for i in os.listdir('/proc'):
        if i.isdigit():
            pids.append(i)

    for pid in pids:
        proc = open(os.path.join('/proc', pid, 'cmdline'), 'r').readline()
        if proc == "Something":
            process = pid

    return process          

def is_running(pid):
    return os.path.exists("/proc/%s" % str(pid))

Dann Mach ich das:

process = get_process()
if process == None:
    #do something
else:
    #Wait until the process end
    while is_running(process):
        pass

Ich denke, dies ist nicht der beste Weg, zu warten, bis der Prozess beendet, muss es irgendeine Funktion warten oder so, aber ich kann es nicht finden.

Haftungsausschluss: Der Prozess ist nicht ein Kind-Prozess

InformationsquelleAutor Niko | 2011-10-04
Schreibe einen Kommentar