rpyc (v 3.3.0) を使用して、psutil モジュールを使用してリモート サーバーで実行されているプロセスのリストを取得しています。私のコードは以下の通りです。
server='hkl20056309'
rpcClient = rpyc.classic.connect(server)
rpsutil = rpcClient.modules.psutil
procs = rpsutil.get_process_list()
プロシージャのリストを正しく取得していますが、一部のプロセス属性が正しく設定されていません。例えば:
>>> procs[166]._name
'mingetty'
>>> procs[140]._name
>>> procs[141]._name
>>> procs[142]._name
>>> procs[142]
<psutil.Process(pid=1828, name='gatengine') at 17483536>
>>> procs[142]._name
'gatengine'
>>>
オブジェクトにアクセスするまで、表示されない場合procs[142]._name
(値は) です。None
すべてのプロセスを印刷すると、リストの 143 番目のプロセス オブジェクトの名前が None と表示されます。しかし、オブジェクトにアクセスした後、突然名前の正しい値を確認できます。
この問題を解決する方法について何か提案はありますか?