我有一個啓動另一個可執行文件作爲子進程的python程序。子進程反過來啓動父進程作爲客戶端連接到的XML-RPC服務器。xmlrpc - 動態選擇端口號
我不想修復端口號,因爲有時端口可能不可用,因爲在同一臺機器上運行同一程序的另一個實例。
我可以將它留給父進程來選擇端口號並將該信息作爲參數或通過Unix環境變量傳遞。
但是在最糟糕的情況下,端口號有可能從父檢查時間開始變爲不可用,然後子進程嘗試獲取。
我們可以讓子進程首先獲取端口號,然後告訴它的父。子進程打印大量的數據,這些數據被重定向到一個文件。有沒有比解析stdout更好的方法?像Unix環境變量,但修改調用者的環境。
另一種方法是父級擁有一個xml-rpc服務器並將該地址傳遞給子過程。子程序會打電話並通知它的服務器地址是什麼。
有沒有更好的方法?