Почему почти все примеры кода ZeroMQ содержат операции sleep ()? - PullRequest
0 голосов
/ 12 июня 2018

Я изучаю ZeroMQ и пытаюсь построить простую очередь сообщений на Python.

Я заметил, что в основном все примеры кода содержат какую-то операцию sleep().

Даже пример hello world в руководстве ZeroMQ делает с комментарием "Do some work".

Я нахожу это немного неясным, это мотивация для имитации действияобработки сообщения?Почему это необходимо?

import time
import zmq

context = zmq.Context()
socket = context.socket(zmq.REP)
socket.bind("tcp://*:5555")

while True:
    #  Wait for next request from client
    message = socket.recv()
    print("Received request: %s" % message)

    #  Do some 'work'
    time.sleep(1)

    #  Send reply back to client
    socket.send(b"World")

1 Ответ

0 голосов
/ 12 июня 2018

является ли мотив для имитации акта обработки сообщения?

В некотором роде да.Запуск while True: "без" какого-либо ручного тормоза вскоре будет довольно уродливым на экране с буквально бесконечной рекой print() -s, не будетэто?

Зачем это нужно?

Просто дешевый SLOC / удобный трюк.За исключением случаев, когда необходимо ввести некоторое время ожидания, нет технической причины для sleep() -s

...