public virtual void TestTermPositionVectors(IndexReader reader, int threadCount)
{
MultiThreadTermVectorsReader[] mtr = new MultiThreadTermVectorsReader[threadCount];
for (int i = 0; i < threadCount; i++)
{
mtr[i] = new MultiThreadTermVectorsReader();
mtr[i].Init(reader);
}
/** run until all threads finished */
int threadsAlive = mtr.Length;
while (threadsAlive > 0)
{
//System.out.println("Threads alive");
System.Threading.Thread.Sleep(new System.TimeSpan((System.Int64) 10000 * 10));
threadsAlive = mtr.Length;
for (int i = 0; i < mtr.Length; i++)
{
if (mtr[i].IsAlive() == true)
{
break;
}
threadsAlive--;
}
}
long totalTime = 0L;
for (int i = 0; i < mtr.Length; i++)
{
totalTime += mtr[i].timeElapsed;
mtr[i] = null;
}
//System.out.println("threadcount: " + mtr.length + " average term vector time: " + totalTime/mtr.length);
}
}