我不太确定我在构建的图表中是否正确使用了同步和异步消息。当我们谈论异步时,操作的顺序就会丢失。这是否意味着我可以在添加相关信息之前删除公告?如果我错了,请纠正我。如果我的图表中有矛盾的地方,我也将不胜感激。
最佳答案
异步消息意味着发送者不等待响应并继续执行。分别查看每行传入和传出的消息,我们可以想象:
- 用户可以将所有公告信息发送到公告创建页面;
- 用户无需等待即可快速继续,并向公告页面发送删除消息。
- 公告创建页面只能继续执行并创建添加。
但是,序列图并不意味着是算法的规范。有些人使用它进行可视化编程,但你的问题表明它不是。事实上,序列图代表了一个典型的场景。在您建模的场景中,消息的顺序是公告创建页面在删除之前完成。
顺便说一句,创建新生命线的两条创建消息必须是带有空心箭头的虚线。这是消息的特殊情况,在这种情况下,空心箭头与异步性无关。
关于asynchronous - 同步和异步消息的序列图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75849145/