我正在构建一个应用程序,想知道将未使用的对象设置为 nil 是否是生产级编码中的常见做法。
我知道这只是对垃圾收集器的提示,并不总是处理对象。
不,这不是常见的做法。只有在极少数情况下,您明确地将 object 设置为 nil。
例如,在某些数据结构的实现中,将对象设置为 nil 是有意义的。假设您实现了一个缓存并提供了一种删除键的方法。让我们进一步假设缓存在内部使用一个数组来保存对已删除对象的引用。然后建议通过将它们设置为 nil 来删除对已删除对象的所有引用。
然而,在实践中,这些情况并不经常发生。
您不需要做任何事情来给垃圾收集器任何提示。只需使用内存效率足够高的算法,它会为您处理其余的事情。