I have a issue with my FileSystemWatcher. 

I have application that needs to monitor a great, really great, amount of files which have been created in a folder, in a short period of time.

When I start developing it, I realize that a lot of files where not been notified, if my buffer was less then 64kb, which is what Microsoft recommends. I tried increasing the buffer size beyond this until I reached a value that worked for me, which is 2621440 bytes!

What could you recommend to use a small size for this case, or what would be the ideal size of buffer?

My example code : 

```
WATCHER = new FileSystemWatcher(SignerDocument.UnsignedPath, "*.pdf");
WATCHER.InternalBufferSize = 2621440; //Great and expensive buffer 2.5mb size!
WATCHER.IncludeSubdirectories = true;
WATCHER.EnableRaisingEvents = true;
WATCHER.Created += new FileSystemEventHandler(watcher_Created);
WATCHER.Renamed += new RenamedEventHandler(watcher_Renamed);

```

And what Microsoft say about this in .NET 2.0 : 

> 
> Increasing buffer size is expensive, as it comes from non paged memory
>  that cannot be swapped out to disk, so keep the buffer as small as
>  possible. To avoid a buffer overflow, use the NotifyFilter and
>  IncludeSubdirectories properties to filter out unwanted change
>  notifications.
>  link : [FileSystemWatcher.InternalBufferSize Property](http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.internalbuffersize%28v=vs.80%29.aspx)
> 
> 
>