Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 关闭NSWindow并释放内存,但只需单击一个按钮即可重新打开它_Objective C_Cocoa_Macos_Nswindow - Fatal编程技术网

Objective c 关闭NSWindow并释放内存,但只需单击一个按钮即可重新打开它

Objective c 关闭NSWindow并释放内存,但只需单击一个按钮即可重新打开它,objective-c,cocoa,macos,nswindow,Objective C,Cocoa,Macos,Nswindow,我有一个要求,我需要在一段时间后显示相同的窗口。 因此,我使用[window setReleaseWhenClose:NO]实现了它,但现在的问题是它一直占用2MB的内存 我想让它像这样,当我打开它时,它使用2MB的内存,当我关闭它时,它释放内存,但我仍然应该能够重新打开它 如果你有任何线索,那会很有帮助 谢谢 M.B.如果要释放内存,必须在窗口关闭后释放它。如果您再次需要它,您始终可以重新加载nib文件。无法在加载窗口的同时释放内存 为了简化内存管理,您应该使用NSWindowControll

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

我想让它像这样,当我打开它时,它使用2MB的内存,当我关闭它时,它释放内存,但我仍然应该能够重新打开它

如果你有任何线索,那会很有帮助

谢谢


M.B.

如果要释放内存,必须在窗口关闭后释放它。如果您再次需要它,您始终可以重新加载nib文件。无法在加载窗口的同时释放内存

为了简化内存管理,您应该使用
NSWindowController
来管理内存


但我不会担心2兆内存。将窗口保留在内存中可能比在需要时再次加载要好。

这是正确的。如果你想恢复记忆,你必须释放它。但是,除非你有一个超级复杂的窗口,需要用户花很长时间来加载和准备,否则这应该不会是一个问题