La mia domanda è divisa in due parti. L'applicazione principale e uno strumento di supporto. Lo strumento di supporto esegue un'attività con autorizzazioni elevate.Come posso avviare più istanze di un'applicazione usando launchd?
Il plist launchd assomiglia a questo: (Solo le impostazioni importanti inclusi.)
<key>UserName</key>
<string>root</string>
<key>ProgramArguments</key>
<array>
<string>/Library/PrivilegedHelperTools/helperTool</string>
</array>
<key>Sockets</key>
<dict>
<key>IPC</key>
<dict>
<key>SockPathName</key>
<string>/tmp/TheSocket</string>
</dict>
</dict>
C'è un modo per lanciare una nuova istanza di aiuto per ogni connessione alla presa?
In alternativa, esiste un modello esistente per la gestione di più richieste? (Sto facendo io stesso in questo momento, che è un bel po 'di codice brutto.)
Grazie per la risposta. Sono un po 'triste che l'unico modo per farlo sembra essere quello di usare una funzione di compatibilità invece di essere offerta direttamente da launchd. Terrò aperta la taglia per altri due giorni, forse qualcun altro ne sa più di noi. –