我在我的 Cocoa 应用程序中进行了一些处理,有时最终会通过数据层次结构调用以执行一系列工作作为事件的结果。每个小块都会创建和破坏一些资源。大多数时候我不想要这些资源,但我想找到一种聪明的方法,在所有工作之前创建它们并在最后杀死它们。
如果无法从“父级”或其他地方全局使用这些缓冲区等,是否有办法在事件循环运行结束时在某些代码中本地知道?然后,如果它们不存在,我可以创建它们,并保留它们直到运行循环结束,然后将它们重用于该时间之前的任何后续调用。
编辑:我不是在寻找关于如何重组我的代码的建议,无论如何我都可以这样做。这个问题只是为我提出了如何知道运行循环何时完成的问题。如果我在写,我不知道,Javascript,我会用setTimeout
零来完成最终事件清理。我想间隔为零的 NSTimer 也可以做到这一点,但想知道是否有更清洁的东西。
谢谢。