簡體   English   中英

Mac的Mono FileSystemWatcher打開它監視的所有文件

[英]Mono FileSystemWatcher for Mac Opens all the files it watches

我正在使用Mono 4.6.2

當我創建FileSystemWatcher來監視Mac上的目錄時,觀察者似乎正在打開該目錄中的所有文件。 我可以通過兩種方式看到這一點:

  1. 當我打開大目錄時,它會引發“打開文件太多”異常。

  2. 我可以看到我的程序的“活動監視器->信息->打開文件和端口”下列出了所有文件。

這是我創建觀察者的方式:

var watcher = new FileSystemWatcher {
    Path = path.LocalPath,
    IncludeSubdirectories = true
};
watcher.NotifyFilter = NotifyFilters.CreationTime | NotifyFilters.FileName | 
                       NotifyFilters.DirectoryName | NotifyFilters.LastWrite;
watcher.Changed += FileSystemWatcher_Changed;
watcher.Renamed += FileSystemWatcher_Renamed;

是這樣設計的嗎? 有沒有解決此問題的方法?

看看這張票#bugzilla.xamarin

解決方法:為每次迭代運行GC

//Execute:
mcs test.cs
ulimit -n 96
mono test.exe

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM