MongoReplicaSetClient docs明確指出,你不能在的過程中使用MongoReplicaSetClient
這兩個過程。pymongo.MongoClient os.fork後
問題:是否保證MongoClient在進程fork之後工作?或者獨立地在每個進程中啓動到數據庫的單獨連接更好?
據我所知,文件描述符cannot be safely used在進程fork之後更進一步,因爲兩個進程共享相同的文件描述結構。但是,這些不是文件,而是網絡連接,被包裝到一些python類中;所以我基本上不知道類似的邏輯是否適用於這裏,MongoClient
,或者由於某種原因保證實際工作正常。
我也不明白,如果有任何子進程先於別人退出,那麼網絡連接是否會被關閉(簡單的寫法表明它沒有,但爲什麼並且總是這樣?)。