簡述qfilesystemwatcher類用於提供監視檔案和目錄修改的介面。
qfilesystemwatcher通過監控指定路徑的列表,監視檔案系統中檔案和目錄的變更。
呼叫addpath()函式可以監控乙個特定的檔案或目錄。如果需要監控多個路徑,可以使用addpaths()。通過使用removepath()和removepaths()函式來移除現有路徑。
qfilesystemwatcher檢查新增到它的每個路徑,已新增到qfilesystemwatcher的檔案可以使用的files()函式進行訪問,目錄則使用directories()函式進行訪問。
當乙個檔案被修改、重新命名或從磁碟上刪除時,會發出filechanged()訊號。同樣,當乙個目錄或它的內容被修改或刪除時,會發射directorychanged()訊號。需要注意:檔案一旦被重新命名或從硬碟刪除,目錄一旦從磁碟上刪除,qfilesystemwatcher將停止監控。
注:監控檔案和目錄進行修改的行為會消耗系統資源。這意味著,你的程序同時監控會有檔案數量的限制。一些系統限制開啟的檔案描述符的數量預設為256。也就是說,如果你的程序試使用addpath()和addpaths()函式新增超過256個檔案或目錄到檔案系統將會失敗。
公共函式
bool addpath(const qstring & path)
如果路徑存在,則新增至檔案系統監控,如果路徑不存在或者已經被監控了,那麼不新增。
如果路徑是乙個目錄,內容被修改或刪除時,會發射directorychanged()訊號;否則,當檔案被修改、重新命名或從磁碟上刪除時,會發出filechanged()訊號。
如果監控成功,返回true;否則,返回false.
監控失敗的原因通常依賴於系統,但也包括資源不存在、接入失敗、或總的監控數量限制等原因。
qstringlist addpaths(const qstringlist & paths)
新增每乙個路徑至新增至檔案系統監控,如果路徑不存在或者已經被監控了,那麼不新增。
返回值是不能被監控的路徑列表。
qstringlist directories() const
返回乙個被監控的目錄路徑列表。
qstringlist files() const
返回乙個被監控的檔案路徑列表。
bool removepath(const qstring & path)
從檔案系統監控中刪除指定的路徑。如果監控被成功移除,返回true。
刪除失敗的原因通常是與系統相關,但可能是由於路徑已經被刪除。
qstringlist removepaths(const qstringlist & paths)
從檔案系統監控中刪除指定的路徑。返回值是乙個無法刪除成功的路徑列表。
訊號void directorychanged(const qstring & path)
當目錄被修改(例如:在指定的路徑中新增或刪除乙個檔案)或從磁碟刪除時,這個訊號被發射。注意:如果有在短時間內有幾種變化,可能有些變化不會發出這個訊號。然而,變化的序列中的最後的變化總會發射這個訊號。
注意:這是乙個私有訊號,可以用於訊號連線但不能由使用者發出。
void filechanged(const qstring & path)
當在指定路徑中的檔案被修改、重新命名或從磁碟上刪除時,這個訊號被發射。
注意:這是乙個私有訊號,可以用於訊號連線但不能由使用者發出。
———————————————
Linux檔案監控
如果要讓伺服器保持最佳效能,你應該將 linux 伺服器的執行級別 runlevel 設定為 3 就是控制台模式,當你需要圖形化桌面的時候使用 startx 命令來啟動它。修改配置 etc inittab 找到 initdefault 一樣,將id 5 initdefault修改為 id 3 ini...
監控日誌檔案
環境 名稱主機名 ip服務端 wangyitong 192.168.232.128 客戶端wyt3 192.168.232.132 root wyt3 ls root wyt3 unzip pyscripts master.zip 解壓安裝包 root wyt3 cd pyscripts maste...
Linux檔案監控
假設要讓server保持最佳效能,你應該將 linux server的執行級別 runlevel 設定為 3 就是控制台模式。當你須要圖形化桌面的時候使用 startx 命令來啟動它。改動配置 etc inittab 找到 initdefault 一樣,將id 5 initdefault改動為 id...