延时发送的消息,如果在消息未生成时,执行取消消息发送操作。可能此时延时发送的消息已经发出,但是在序列中排队等待处理。此时执行延时消息取消发送操作可能无效,因为对应的消息已经存储在消息队列中。
针对这种场景,有以下几种处理方法:
方法一:
软件框架的消息处理机制原生支持,将消息从待处理队列中删除的操作。这种方法是最安全的处理方式。
方法二:
实现一个状态检查函数,在消息处理函数中使用状态检查函数去检查当前是否需要执行对应的消息处理。
延时发送的消息,如果在消息未生成时,执行取消消息发送操作。可能此时延时发送的消息已经发出,但是在序列中排队等待处理。此时执行延时消息取消发送操作可能无效,因为对应的消息已经存储在消息队列中。
针对这种场景,有以下几种处理方法:
方法一:
软件框架的消息处理机制原生支持,将消息从待处理队列中删除的操作。这种方法是最安全的处理方式。
方法二:
实现一个状态检查函数,在消息处理函数中使用状态检查函数去检查当前是否需要执行对应的消息处理。