Я получаю это исключение при запуске некоторого кода для добавления текста в индекс Lucene.net:
Процесс не может получить доступ к файлу
'E: \ SomeProject \ SomeProject.Webroot \ App_Data \ Lucene \ segments.new'
потому что он используется другим
процесс.
Какой самый простой способ узнать, что такое «другой процесс»? (Я работаю на Win XP) Вот фрагмент кода, зарезанный (исключение выдается строкой 'AddDocument' после 50+ итераций) на случай, если это поможет:
using l = Lucene.Net;
public void IndexText(List<TextToIndex> textToIndexList)
{
l.Analysis.Standard.StandardAnalyzer standardAnalyzer =
new l.Analysis.Standard.StandardAnalyzer();
l.Index.IndexWriter indexWriter =
new l.Index.IndexWriter(_LuceneIndexPath, standardAnalyzer, false);
foreach (TextToIndex textToIndex in textToIndexList)
{
l.Documents.Document luceneDoc =
CreateLuceneDoc(textToIndex.TypeId,
textToIndex.TextId,
textToIndex.Text,
textToIndex.Title,
textToIndex.ModifiedDate,
textToIndex.CultureCode);
indexWriter.AddDocument(luceneDoc);
}
indexWriter.Close();
}