簡體   English   中英

MAC OSX代理-如何啟動多個實例

[英]MAC OSX Agents - how to launch multiple instances

我正在嘗試創建幫助器對象(它可以是守護程序或代理)。 如您所見,Chrome和Safari幫助程序應該按需啟動它,並且它的多個實例應該在那里。

我嘗試了什么? 我已經在Mac OS X中引用了這些Apple文檔啟動的 教程創建啟動項

提到了對於多個進程,我們應該使用NumberOfProcesses鍵,我使用了它,但是在活動監視器中我只看到一個實例。

我的清單看起來像這樣

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.anoop.test</string>
    <key>NumberOfProcesses</key>
    <string>5</string>
    <key>ProgramArguments</key>
    <array>
        <string>/Users/anoopvaidya/Desktop/0@/WebTwainService</string>
        <string>start</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>KeepAlive</key>
    <true/>
    <key>Application is agent (UIElement)</key>
    <string>YES</string>
</dict>
</plist>

我是否在復制Chrome上的Launch Agent助手的正確路徑上? 請幫助我找到完成它的最佳方法嗎?

NumberOfProcesses不是頂級密鑰。 它是HardResourceLimits的子項,用於指示守護程序或代理在內核停止您運行之前可能創建多少個子進程。 它與啟動創建流程的多個實例無關。

已啟動不支持為單個作業管理多個流程。 Chrome和Safari不使用Launched管理工作流程。 他們自己管理這些。

如果要為每個應用程序提供單獨的流程幫助,則可以使用應用程序XPC服務來實現,但是XPC也不支持為單個應用程序提供幫助的服務的多個流程。 有關更多信息,請參見運行同一XPC服務的多個實例(NSXPCConnection)

典型的模式是只有一個LaunchAgent / Daemon接受傳入的連接,然后派生自己獨立處理每個客戶端。 我認為相同的模式應該適用於XPC服務(現在是首選),但是我以前沒有以這種方式構建過。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM