MCPcopy
hub / github.com/redis/redis-py / wait_for_message

Function wait_for_message

tests/test_pubsub.py:32–52  ·  view source on GitHub ↗
(
    pubsub, timeout=0.5, ignore_subscribe_messages=False, node=None, func=None
)

Source from the content-addressed store, hash-verified

30
31
32def wait_for_message(
33 pubsub, timeout=0.5, ignore_subscribe_messages=False, node=None, func=None
34):
35 now = time.monotonic()
36 timeout = now + timeout
37 while now < timeout:
38 if node:
39 message = pubsub.get_sharded_message(
40 ignore_subscribe_messages=ignore_subscribe_messages, target_node=node
41 )
42 elif func:
43 message = func(ignore_subscribe_messages=ignore_subscribe_messages)
44 else:
45 message = pubsub.get_message(
46 ignore_subscribe_messages=ignore_subscribe_messages
47 )
48 if message is not None:
49 return message
50 time.sleep(0.01)
51 now = time.monotonic()
52 return None
53
54
55def make_message(type, channel, data, pattern=None):

Calls 4

monotonicMethod · 0.80
get_sharded_messageMethod · 0.45
get_messageMethod · 0.45
sleepMethod · 0.45

Tested by

no test coverage detected