所以我知道这可能很难回答,但我在 Mountain 和 Lion 上遇到了一些奇怪的行为,我希望这可能会给一些 Cocoa 大师敲响警钟。
在我们的应用程序中,我们有一个文件选择对话框,它是一个 NSOpenPanel,在用户选择适当的文件后,会弹出一个 NSProgressIndicator,并在用户项目加载时使用对 incrementBy 的调用进行更新,最后会弹出一个 NSWindow,其中包含很多乐趣和有趣的视图(有些是 NSOpenGLViews)。
在 Snow Leopard 上,所有这些都顺利进行:文件选择器打开,用户选择文件,文件选择器关闭,然后进度表弹出迭代然后项目窗口弹出。这是我所期待的。
当我在 Lion 上测试它时,它有一个细微的变化:文件选择器打开,用户选择一个文件,文件选择器没有关闭,进度表要么不弹出,要么只弹出一小会儿,项目窗口弹出,最后文件选择器消失了。这似乎很奇怪,因为它是一个模态对话框,所以文件选择器会逗留。
当我最终在 Mountain Lion 上对此进行测试时,它的行为与 Lion 相同,除了时不时进度表会弹出并停止其中一个更新,并且应用程序的内存将失控并且非常迅速地增长,直到应用程序正在使用向上 3GB 并且应用程序崩溃。
我想知道是否有人知道 Lion/Mountain Lion 的任何变化可以解释这种奇怪的行为。