Может ли MacOSX сгруппировать несколько приложений NSA, чтобы они выглядели как одно? - PullRequest
1 голос
/ 10 сентября 2009

Я пытаюсь разделить свое приложение на разные подпроцессы, каждый из которых делает что-то свое. Основная причина - стабильность и лучшее использование памяти, потому что я использую консервативный сборщик мусора (boehm-weisser).

Я не хочу делать это одним огромным процессом, который делает все это.

К сожалению, подпроцессы должны отображать некоторые окна, поэтому им понадобятся экземпляры NSApplication.

Но я хочу, чтобы они отображались как одно приложение в Expose и покидали меню основного процесса, когда они стали активными.

Есть ли способ сделать это?

Ответы [ 3 ]

2 голосов
/ 10 сентября 2009

Я считаю, что нет никакого способа сделать это (без большого количества взлома).

Единственная возможность, которая приходит мне в голову, - это выделенный процесс пользовательского интерфейса (который является основным приложением) и много IPC для дочерних процессов. Вкратце: разделение MVC на процессы.

1 голос
/ 11 сентября 2009

Разве это не то, что делают Chrome и Stainless?

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

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

1 голос
/ 10 сентября 2009

Нет способа сделать это. В Mac OS X приложение, которое имеет ключевой фокус, также является основным приложением и, таким образом, владеет строкой главного меню, отображается как в фокусе и т. Д. Вся система построена вокруг этого понятия, включая Expose Док-станция, средство выбора приложений, службы запуска и т. Д. *

Мне также любопытно, почему вы не используете встроенный в систему коллектор. Вся система была разработана, чтобы хорошо работать с этим коллектором. Это консервативный, точно сканирующий (кроме стека), практически полностью не блокирующий коллектор.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...