Lucene.Net.Search.TestMultiThreadTermVectors.TestTermPositionVectors C# (CSharp) Method

TestTermPositionVectors() public method

public TestTermPositionVectors ( IndexReader reader, int threadCount ) : void
reader Lucene.Net.Index.IndexReader
threadCount int
return void
		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);
		}
	}