关闭NSWindow并释放内存,但只需按一下按钮即可重新打开它

Mee*_*etB 6 macos cocoa objective-c nswindow

我有一个要求,我需要在一段时间后显示相同的窗口.所以我已经实现了它[window setReleaseWhenClose:NO],但现在的问题是它一直占用2MB的内存.

我想要这样,当我打开它时它使用2MB的内存,当我关闭它时释放内存,但我仍然可以重新打开它.

如果你有任何线索,这将是有帮助的.

谢谢

MB

Sve*_*ven 5

如果要释放内存,则必须在关闭后释放窗口.如果您再次需要它,您总是可以重新加载nib文件.无法保持窗口加载并同时释放内存.

为了使这种内存管理更容易,您应该使用a NSWindowController来管理内存.

但我不担心2 MiB的RAM.将窗口保留在内存中可能比在需要时再次加载窗口更可取.