1
幾個進程每個都將一個文件寫入一個目錄。目標是控制目錄的大小,以便每當它達到大小(S)時,所有進程都會停止寫入目錄並丟棄它們即將寫入的文件。Python中的共享永久存儲器
如果由於其中一些文件被刪除而導致文件大小比S小,那麼進程將恢復寫入文件。
看來我需要進程間鎖定來實現這種設計。不過,我想也許有一種更簡單的方法,因爲進程間的鎖定在Python中並不容易獲得,顯然在進程之間存在爭用。
的Python 2.7 平臺(贏,蘋果機,Linux)
我沒有豪華的監控程序。如果沒有監視器進程,每個進程都需要更新寫入文件的大小,因爲它會添加另一個文件(或刪除)。它引發了很多爭論,但沒有顯示器。 – Ali
您可以在編寫器進程中添加檢查。因此,在寫入之前,每個進程檢查目錄大小。如果達到某個閾值,進程將創建鎖定文件並停止寫入。如果它沒有達到一個,但鎖定文件存在,進程將刪除鎖定文件並開始寫入。恕我直言,這是可能的,但不清潔的解決方案,單獨的監測過程會更好。 –
在每次寫入時檢查目錄大小可能非常昂貴。在Windows上,您實際上必須枚舉每個文件並添加大小。 – Ali