文件名称:关闭关闭关闭关闭writer-操作系统
文件大小:4.69MB
文件格式:PDF
更新时间:2024-06-29 22:01:34
lucene 源码分析
(5) 关闭关闭关闭关闭writer writer.close(); 通过 IndexFileDeleter.decRef()删除被合并的段 有关 SimpleFSLock 进行 JVM 之间的同步: � 有时候,我们写 java 程序的时候,也需要不同的 JVM 之间进行同步,来保护一个整个 系统中唯一的资源。 � 如果唯一的资源仅仅在一个进程中,则可以使用线程同步的机制 � 然而如果唯一的资源要被多个进程进行访问,则需要进程间同步的机制,无论是 Windows 和 Linux 在操作系统层面都有很多的进程间同步的机制。 � 但进程间的同步却不是 Java 的特长,Lucene 的 SimpleFSLock 给我们提供了一种方式。 Lock 的抽象类的抽象类的抽象类的抽象类 public abstract class Lock { public static long LOCK_POLL_INTERVAL = 1000; public static final long LOCK_OBTAIN_WAIT_FOREVER = -1; public abstract boolean obtain() throws IOException; public boolean obtain(long lockWaitTimeout) throws LockObtainFailedException, IOException { boolean locked = obtain();