With regards to the sync issue, I was puzzling over whether or not the java sync method actually flushes the underlying disk cache or if it simply completes the pending operations within the context of the specific file stream (like System.IO.FileStream.Flush()) - I haven't been able to find the answer so far. Obviously an actual sync of the underlying cache is a very expensive operation that would be nice to avoid if possible, especially if all we need to do is flush the pending writes to the file so that a concurrent read operation can take place. Can anyone enlighten me perhaps?
Thanks, Ben
