python广播机制具体代码例子
时间: 2023-09-12 11:08:11 浏览: 37
以下是一个使用Python `threading.Event`模块实现广播机制的代码例子:
```python
import threading
class Broadcaster:
def __init__(self):
self.event = threading.Event()
def broadcast(self, message):
self.message = message
self.event.set()
def listen(self):
self.event.wait()
print(self.message)
broadcaster = Broadcaster()
threading.Thread(target=broadcaster.listen).start()
threading.Thread(target=broadcaster.listen).start()
broadcaster.broadcast('Hello, world!')
```
上述代码中,定义了一个`Broadcaster`类,其中包含`broadcast`和`listen`方法。`broadcast`方法用于发送消息,`listen`方法用于接收消息并打印。
创建一个`Broadcaster`实例后,调用两次`listen`方法并启动相应的线程。然后调用`broadcast`方法发送消息,此时所有的线程都会被唤醒并打印消息。
输出结果为:
```
Hello, world!
Hello, world!
```
可以看到,同一个消息被广播给了两个接收器。