12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- from hub import methods, Global
- import threading
- import time
- import json
- import os
- class MessageListener:
- """
- """
- @classmethod
- def run(cls, background_is=True):
- from lib.UserWorkRecord import UserWorkRecord
- UserWorkRecord.init()
- # from lib.MessageListenerZJV1 import subscribe_Veh0533
- # from lib.MessageListenerZJV2 import subscribe_Veh0534
- # from lib.MessageListenerZJV3 import subscribe_Veh0535
- # from lib.MessageListenerZJV4 import subscribe_Veh0537
- # from lib.MessageListenerZJV5 import subscribe_Veh0538
- # todo 创建多个实例,根据不同项目现场,创建不同的监听消息的话题,以及指定对应解析使用的方法;
- from lib.TopicListener import TopicListener
- thread_list = [
- threading.Thread(target=TopicListener(
- 'Cockpit/CanBus/CanId001/Cop001',
- 'method_c001',
- )),
- threading.Thread(target=TopicListener(
- 'Vehicle/ControlVehicle/Veh001',
- 'method_v001',
- )),
- # threading.Thread(target=subscribe_Veh0533),
- # threading.Thread(target=subscribe_Veh0534),
- # threading.Thread(target=subscribe_Veh0535),
- # threading.Thread(target=subscribe_Veh0537),
- # threading.Thread(target=subscribe_Veh0538),
- ]
- for thread in thread_list:
- thread.setDaemon(True)
- thread.start()
- if background_is:
- return
- for thread in thread_list:
- thread.join()
- if __name__ == '__main__':
- # --- test ---
- MessageListener.run()
|