因为需要写一个类似的消息响应的机制,即当某个类收到相应的消息之后调用相应的响应函数
- class MessageHandler():
- funcDict = {}
- def OnEvent(self, cmd, param, recv):
- try:
- func = self.funcDict[cmd]
- func(param, recv)
- except:
- return None
- def AddEvent(self, msgName, funcName):
- self.funcDict[msgName] = funcName
类非常简单,可以在这个类再封装一层
- class MessageEngine():
- msg = MessageHandler()
- def AddHandler(self, msgName, funcName):
- self.msg.AddEvent(msgName, funcName)
- def RecvMessage(self, msgName, param):
- self.msg.OnEvent(msgName, param)
- def run(self):
- work()