Как обработать сообщение в on_message mqtt paho, если несколько сообщений пришли одновременно

return_message = ""

def on_connect(client, userdata, flags, rc):

    print("Connected with result code "+str(rc))
    client.subscribe(topic)

def on_message(client, userdata, message):
   global return_message
   print("received data is :")  
   return_message = message.payload

client = mqtt.Client("user") 
client.on_connect=on_connect
client.on_message=on_message
client.connect(broker,port,60)
client.loop_start()

return_message является глобальной переменной. получение сообщения, когда есть только одно сообщение за раз. но мне нужно обрабатывать несколько сообщений за раз. как это сделать. если я объявлю return_message как массив, то также я думаю, что будет потеря данных. есть ли лучший способ сделать это. мне нужно передать значение возвращаемого сообщения в другие файлы также. как это сделать

Все сообщения обрабатываются в сетевом цикле клиента, это означает, что по умолчанию одновременно будет обрабатываться только одно сообщение, так как одновременно будет запущен только один экземпляр on_message.

Если вы хотите обрабатывать сообщения параллельно, возможно, потому что обработка занимает много времени, то вам нужно создать собственный пул потоков и передать обработку сообщений этому пулу.

Вернуться на верх