This is an automated email from the ASF dual-hosted git repository. nightowl888 pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/lucenenet.git
commit 17d1f49a6fcf72c841e4c86df5d3d41d7f27aac4 Author: Shad Storhaug <[email protected]> AuthorDate: Thu Dec 9 04:22:51 2021 +0700 Lucene.Net.Util.LuceneTestCase::NewSearcher(): Added missing event handler to stop the TaskScheduler service from accepting new work --- .../Util/LuceneTestCase.cs | 31 +++++++++++----------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs b/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs index 99b4d81..4a3292e 100644 --- a/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs +++ b/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs @@ -2433,7 +2433,7 @@ namespace Lucene.Net.Util else { int threads = 0; - TaskScheduler ex; + LimitedConcurrencyLevelTaskScheduler ex; if (random.NextBoolean()) { ex = null; @@ -2452,7 +2452,7 @@ namespace Lucene.Net.Util { Console.WriteLine("NOTE: newSearcher using ExecutorService with " + threads + " threads"); } - //r.AddReaderClosedListener(new ReaderClosedListenerAnonymousClass(ex)); // LUCENENET TODO: Implement event (see the commented ReaderClosedListenerAnonymousClass class near the bottom of this file) + r.AddReaderClosedListener(new ReaderClosedListenerAnonymousClass(ex)); } IndexSearcher ret; if (wrapWithAssertions) @@ -3655,20 +3655,21 @@ namespace Lucene.Net.Util { return Random.NextGaussian(); } - } - //private class ReaderClosedListenerAnonymousClass : IndexReader.IReaderClosedListener - //{ - // private TaskScheduler ex; + private class ReaderClosedListenerAnonymousClass : IndexReader.IReaderClosedListener + { + private readonly LimitedConcurrencyLevelTaskScheduler ex; - // public ReaderClosedListenerAnonymousClass(TaskScheduler ex) - // { - // this.ex = ex; - // } + public ReaderClosedListenerAnonymousClass(LimitedConcurrencyLevelTaskScheduler ex) + { + this.ex = ex; + } - // public void OnClose(IndexReader reader) - // { - // TestUtil.ShutdownExecutorService(ex); - // } - //} + public void OnClose(IndexReader reader) + { + ex?.Shutdown(); + //TestUtil.ShutdownExecutorService(ex); + } + } + } } \ No newline at end of file
