Закройте NSWindow и освободите память, но заново откройте ее, нажав кнопку - PullRequest
6 голосов
/ 04 января 2011

У меня есть требование, по которому мне нужно показать то же самое окно через некоторое время. Поэтому я добился этого с помощью [window setReleaseWhenClose:NO], но теперь проблема в том, что он продолжает занимать 2 МБ памяти.

Я хочу, чтобы это было так, что когда я открываю его, он использует 2 МБ памяти, а когда я закрываю его, он освобождает эту память, но все же я должен иметь возможность открыть его снова.

Если у вас есть какие-либо подсказки, это было бы полезно.

Спасибо

М.Б.

1 Ответ

5 голосов
/ 04 января 2011

Если вы хотите освободить память, вы должны освободить окно после его закрытия. Если вам это нужно снова, вы всегда можете перезагрузить файл пера. Невозможно сохранить окно загруженным и одновременно освободить память.

Чтобы упростить управление памятью, вы должны использовать NSWindowController для управления памятью.

Но я бы не стал беспокоиться о 2 МБ ОЗУ. Хранение окна в памяти может быть предпочтительнее, чем загрузка его снова, когда это необходимо.

...