-
Notifications
You must be signed in to change notification settings - Fork 0
/
master-multicast.py
executable file
·45 lines (35 loc) · 1.12 KB
/
master-multicast.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#!/usr/bin/python
import logging
import threading
import time
logging.basicConfig(
level=logging.DEBUG,
format="(%(threadName)-10s) %(message)s",
)
# def wait_for_event(e):
# """Wait for the event to be set before doing anything"""
# logging.debug('wait_for_event starting')
# event_is_set = e.wait()
# logging.debug('event set: %s', event_is_set)
# logging.debug('inititate sync')
def wait_for_event_timeout(e, t):
"""Wait t seconds and then timeout"""
while not e.isSet():
logging.debug("wait_for_event_timeout starting")
event_is_set = e.wait(t)
logging.debug("event set: %s", event_is_set)
# if event_is_set:
# logging.debug('processing event')
# else:
# logging.debug('doing other work')
e = threading.Event()
# t1 = threading.Thread(name='block',
# target=wait_for_event,
# args=(e,))
# t1.start()
t2 = threading.Thread(name="non-block", target=wait_for_event_timeout, args=(e, 1))
t2.start()
logging.debug("Waiting before calling Event.set()")
time.sleep(5)
e.set()
logging.debug("Event is set")