.TP
\fBMONO_ARM_FORCE_SOFT_FLOAT\fR
When Mono is built with a soft float fallback on ARM and this variable is set to
-"1", Mono will always emit soft float code, even if a VFP unit is detected.
+"1", Mono will always emit soft float code, even if a VFP unit is
+detected.
+.TP
+\fBMONO_DARWIN_WATCHER_MAXFDS\fR
+This is a debugging aid used to force limits on the FileSystemWatcher
+implementation in Darwin. There is no limit by default.
.TP
\fBMONO_DISABLE_AIO\fR
If set, tells mono NOT to attempt using native asynchronous I/O services. In
class KqueueMonitor : IDisposable
{
+ static bool initialized;
+
public int Connection
{
get { return conn; }
{
this.fsw = fsw;
this.conn = -1;
+ if (!initialized){
+ int t;
+ initialized = true;
+ var maxenv = Environment.GetEnvironmentVariable ("MONO_DARWIN_WATCHER_MAXFDS");
+ if (maxenv != null && Int32.TryParse (maxenv, out t))
+ maxFds = t;
+ }
}
public void Dispose ()
const int F_GETPATH = 50;
const int __DARWIN_MAXPATHLEN = 1024;
static readonly kevent[] emptyEventList = new System.IO.kevent[0];
- const int maxFds = 200;
+ int maxFds = Int32.MaxValue;
FileSystemWatcher fsw;
int conn;