Tiny cleanup

This commit is contained in:
mlemanczyk committed 2023-05-21 02:37:16 +02:00
1 parent fa8f1b029a
commit 26f9666df6
5 files changed
+40 -39

No files matched your search

@@ -1,6 +1,6 @@
namespace Recyclable.Collections.Parallel
{
public sealed class ManualResetEventSlimmer
public sealed class ManualResetEventSlimmer
{
internal bool _isSet;
public bool IsSet => _isSet;
@@ -1,38 +1,39 @@
namespace Recyclable.Collections.Parallel
{
public sealed class ParallelSynchronizationContext : IDisposable
{
public readonly ManualResetEventSlimmer ItemFoundSignal;
public readonly Barrier AllDoneSignal;
public long FoundItemIndex;
public Exception? Exception;
internal bool _returned;
public sealed class ParallelSynchronizationContext : IDisposable
{
public readonly ManualResetEventSlimmer ItemFoundSignal;
public ParallelSynchronizationContext()
{
ItemFoundSignal = ManualResetEventSlimmerPool.Create(false);
public readonly Barrier AllDoneSignal;
public long FoundItemIndex;
public Exception? Exception;
internal bool _returned;
public ParallelSynchronizationContext()
{
ItemFoundSignal = ManualResetEventSlimmerPool.Create(false);
AllDoneSignal = new(0);
}
}
public ParallelSynchronizationContext(int participantCount)
{
ItemFoundSignal = ManualResetEventSlimmerPool.Create(false);
AllDoneSignal = new(participantCount);
}
public ParallelSynchronizationContext(int participantCount)
{
ItemFoundSignal = ManualResetEventSlimmerPool.Create(false);
AllDoneSignal = new(participantCount);
}
public void Dispose()
{
if (!_returned)
{
_returned = true;
ParallelSynchronizationContextPool.Shared.Return(this);
}
else
{
ItemFoundSignal.Dispose();
AllDoneSignal.Dispose();
GC.SuppressFinalize(this);
}
}
}
public void Dispose()
{
if (!_returned)
{
_returned = true;
ParallelSynchronizationContextPool.Shared.Return(this);
}
else
{
ItemFoundSignal.Dispose();
AllDoneSignal.Dispose();
GC.SuppressFinalize(this);
}
}
}
}
+1 -1
View File
@@ -5,7 +5,7 @@ using System.Runtime.CompilerServices;
using Recyclable.Collections.Parallel;
using Recyclable.Collections.Pools;
[assembly:InternalsVisibleTo("Recyclable.Collections.Benchmarks")]
[assembly: InternalsVisibleTo("Recyclable.Collections.Benchmarks")]
namespace Recyclable.Collections
{