lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kai Hu" <kai...@dusee.cn>
Subject 答复: About muti-Threads in Lucene
Date Mon, 06 Aug 2007 10:29:05 GMT
Thanks , Patrick,

It is useful. But I found a problem that I use 

“new LuceneIndexAccessor(accessProvider);” when a request comes in B/S,the LuceneIndexAccessor.getWriter()
will lose its sense,it will new an IndexWriter.

public IndexWriter getWriter() throws IOException {

       IndexWriter result;

       synchronized (this) {//here “synchronized” will lose its sense 

           checkClosed();

           ...

       if (cachedWriter != null) {

              log.debug("returning cached writer");

              result = cachedWriter;

              writerUseCount++;

           } else {

              log.debug("opening new writer and caching it");

              result = accessProvider.getWriter();// when new a LuceneIndexAccessor Object
,it will new an IndexWriter Object 

              cachedWriter = result;

              writerUseCount = 1;

           }

    }

}

It will also throw a Exception “cann’t obtain the Lock”,should I use a single instance
of LuceneIndexAccessor? Suppose I use a single instance of LuceneIndexAccessor,how to set
a different Directory or Analyzer at one time.

 

kai


///////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////

 

>Hi Kai

> 

>We use the Lucene Index Accessor contribution:

> 

>http://www.nabble.com/Fwd%3A-Contribution%3A-LuceneIndexAccessor-t17416.html#a47049

> 

>Patrick

 

On 06/08/07, Kai Hu <kai.hu@dusee.cn> wrote:

> Hi,

> 

>          How do you solve the problems when add,update,delete documents

> in muti-threads,use synchronized ?

> 

> 

 

---------------------------------------------------------------------

To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org

For additional commands, e-mail: java-user-help@lucene.apache.org

 


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message