是一个单例构造函数幂等

本文关键字:单例 构造函数 一个 | 更新日期: 2023-09-27 18:25:06

我仍在努力掌握这两个概念,所以如果我误解了什么,请解释一下。

我已经阅读了一些关于幂等运算的来源(即SO条目),昨天我工作场所的一位高级开发人员发来了这篇关于singleton的文章。在阅读singleton文章时,我想知道,对象的构造函数是否正确地实现了singleton模式幂等?

我的理解是,这是因为调用Singleton.Instance()(Singleton文章中的v.6)超过1次不会改变任何事情,因为单例不能被实例化多次,但我不完全确定我是否正确地组合了这两个主题。

是一个单例构造函数幂等

当一个操作被描述为幂等时,这真正意味着用相同的参数对它进行的任何调用都不会导致额外的状态更改。例如,在REST API中,DELETE请求通常是等幂的,这意味着如果我进行后续请求以删除资源,而该资源已经消失,我仍然会获得成功。因此,从用户的角度来看,看起来就像发生了什么事情,但实际上系统并没有改变任何事情——它只是确认请求,即

User: "Please delete resource A"
System: "Check status of resource A"
System: "Resource A found, deleting Resource A" || "Resource A not found"
System: "Return OK"

因此,将其纳入单例的概念中,其工作原理基本相同。您随后请求创建一个对象,但是,该操作只执行一次,其余操作只返回创建的实例。