gpt4 book ai didi

objective-c - 销毁和重建单例 iOS

转载 作者:行者123 更新时间:2023-11-28 18:39:31 26 4
gpt4 key购买 nike

我目前正在为 iOS 开发一个应用程序,它需要使用套接字连接与硬件设备进行通信。因此我在 NSStream 中使用单例对象。到目前为止,一切都按预期工作。

问题是如果连接终止或中断,则无法重新打开它(这在文档中有说明)。所以我的想法是销毁 Singleton 并重新创建它。这不应该干扰单例模式,因为它声明只存在这样一个类的一个副本。

有人知道如何解决这个问题吗?不涉及重新创建单例的任何其他解决方案将不胜感激。

最佳答案

为什么不在您的单例类中放置一些逻辑来测试与设备的连接是否处于事件状态。如果它已经死了,关闭连接,然后打开一个新的。这实际上与您试图通过破坏重新创建单例来做的事情是一样的,但并没有那么多地滥用单例模式。它也应该更简单,因为只有单例知道连接,从而保持低耦合。

关于objective-c - 销毁和重建单例 iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13089045/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com