Esempio n. 1
0
def main():
    if len(sys.argv) != 3 and len(sys.argv) != 4:
        print "Usage: python system_model [trial_number] [collect_metrics(true/false)] [probability of a send]"
    msg_queues = [Queue() for _ in range(3)]
    threads = []
    pids = []
    for i in range(3):
        clock_speed = random.randint(1,6)
        p = Process(i, msg_queues, (clock_speed))
        pid = os.fork()
        if pid == 0:
            p.run_process()
        elif pid < 0:
            print 'Fork error'
            sys.exit(1)
        else:
            pids.append(pid)

    for pid in pids:
        os.waitpid(pid, 0)