Implements {@link LockFactory} using native OS file /// locks. Note that because this LockFactory relies on /// java.nio.* APIs for locking, any problems with those APIs /// will cause locking to fail. Specifically, on certain NFS /// environments the java.nio.* locks will fail (the lock can /// incorrectly be double acquired) whereas {@link /// SimpleFSLockFactory} worked perfectly in those same /// environments. For NFS based access to an index, it's /// recommended that you try {@link SimpleFSLockFactory} /// first and work around the one limitation that a lock file /// could be left when the JVM exits abnormally.
/// ///The primary benefit of {@link NativeFSLockFactory} is /// that lock files will be properly removed (by the OS) if /// the JVM has an abnormal exit.
/// ///Note that, unlike {@link SimpleFSLockFactory}, the existence of /// leftover lock files in the filesystem on exiting the JVM /// is fine because the OS will free the locks held against /// these files even though the files still remain.
/// ///If you suspect that this or any other LockFactory is /// not working properly in your environment, you can easily /// test it by using {@link VerifyingLockFactory}, {@link /// LockVerifyServer} and {@link LockStressTest}.
/// ///Lucene.Net.lockDir
/// system property. If that is not set, then java.io.tmpdir
/// system property is used.
///