NekodRider / mirai-qbot

某dota群的自用qbot
GNU Affero General Public License v3.0
1 stars 0 forks source link

把逻辑改成一个消息队列类似物 #24

Closed MMMartt closed 4 years ago

MMMartt commented 4 years ago

我觉得理想的过程应该是这样的:

  1. message -> mirai -> inQueue

  2. queueUpdate -> trigger handlers

  3. handling finished -> update queue, send msg, update data & etc...

如果这样的话,保证好 mirai -> inQueue 这一块没有问题后(应该很简单)。

接下来本地只要弄个假队列更新就可以直接调试了。现在这个样子感觉基本没啥问题,但是一个消息基本只能立即一个地方去处理,要多个 handler 处理的话逻辑可能就会乱。而且混起来的话搞起来感觉不是很方便。

NekodRider commented 4 years ago

感觉描述还是有点问题 queueUpdate触发handler的话实际上跟原来的event触发handler是一样的逻辑 最后还是用协程消费者生产者的模型解决了