2013-10-12 3 views
0

Я хочу запустить несколько параллельных логических операций в службе XPC. Дело в том, что XPC-сервисы - это одиночные игры - либо они работают, либо нет. Могу ли я использовать NSThread, диспетчерские очереди или аналогичные моделировать это?Темы и XPC

Приложение, которое будет использовать эту службу XPC, представляет собой изолированное приложение для пользователей, которое использует службы XPC для обхода ограничений, присущих изолированной fork/exec.

+0

Ваш сервис - это еще один процесс. Вы пытались использовать поток или очередь отправки? Вы действительно столкнулись с какими-либо проблемами? –

+0

@ KurtRevis: Честно говоря, я еще не пробовал. Мне было интересно, возможно ли это теоретически. Ваш комментарий, кажется, утверждает, что это так, поэтому я попробую. – wjk

ответ

0

Если вы говорите о песочнице XPC, то да, вы можете многопоточно, НО, launchd внимательно следит за вами и сильно ее дросселирует в зависимости от нагрузки в то время.

Если есть слишком много активности, это может быть по сути прекращено как нарушение «Неправильного использования API» (который запускается очень часто для XPC).

Если вы планируете не изолировать песочницу и работать с машинами, тогда у вас не должно быть проблем.

Какая услуга/сервер/помощник/на что вы смотрите?

Он предназначен для использования в пользовательском пространстве? т.е. когда пользователь открывает приложения, в которых он содержится? Или это часть демонов и других более глубоких услуг?

Смежные вопросы