出现步骤:
1.客户端发送请求给Map上的实体(ActorLocation消息类型,框架对这类消息在底层有协程锁处理,第一次对实体id上锁,并且需要等待后续操作完成,才继续执行,采用 阻塞调用,第一次锁没释放掉),请求提取邮件。然后由Map给Mail(邮件服务器进程)发送消息,提取邮件并获取邮件附件等信息。提取附件后需要判断背包能否装下,此时 从Mail通过实体Id往Map发消息 判断背包空间(ActorLocation消息类型,同样存在协程锁,由于第一次锁没释放,这次请求被阻塞在队列,等待第一次锁的释放, 第一次锁因为全程是阻塞调用,会出现等待第二次锁的释放,死锁条件形成)。 因为逻辑需求:整个过程都采用阻塞调用(当然只要其中一个环节使用携程可以解决问题,使用携程逻辑顺序就乱了)。
2.代码流程大概如下:




3.求教大佬 怎么处理!!!!!