红绿灯

Posted kuraki

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了红绿灯相关的知识,希望对你有一定的参考价值。

import time
import random
from multiprocessing import Process,Event

def cars(e,i):
    if not e.is_set():
        print(car%d在等待%i)
        e.wait()
    print(33[33mcar%i通过33[0m % i)


def light(e):
    while True:
        if e.is_set():
            e.clear()
            print(33[31m红灯亮了33[0m)
        else:
            e.set()
            print(33[32m绿灯亮了33[0m)
        time.sleep(2)

if __name__ ==__main__:
    e = Event()
    p = Process(target=light,args=(e,))
    p.start()
    for i in range(1,21):
        p = Process(target=cars,args=(e,i))
        p.start()
        time.sleep(random.random())

 

以上是关于红绿灯的主要内容,如果未能解决你的问题,请参考以下文章

自动驾驶 Apollo 源码分析系列,感知篇:将红绿灯检测和识别代码细致走读一遍

在anylogic中触发红绿灯的方法

java多线程模拟红绿灯案例

python多线程Event实现红绿灯案例

自动驾驶 Apollo 源码分析系列,感知篇:红绿灯检测和识别

杨校老师课堂之JavaScript定时器案例的红绿灯设计