Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Optimize object pool contention 2 #497

Merged
merged 1 commit into from
Dec 4, 2024

Optimized object pool by checking for early-return condition when the…

fb994da
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
Merged

Optimize object pool contention 2 #497

Optimized object pool by checking for early-return condition when the…
fb994da
Select commit
Loading
Failed to load commit list.
GitHub Actions / dotnet-test-results-net8.0-Release-Pool_Enabled-userMode succeeded Dec 3, 2024 in 0s

25180 passed, 0 failed and 0 skipped

Tests passed successfully

Report Passed Failed Skipped Time
TestResults/dotnet-test-results-net8.0-Release-Pool_Enabled-userMode-analyzer.trx 4✅ 3s
TestResults/dotnet-test-results-net8.0-Release-Pool_Enabled-userMode-core.trx 25176✅ 3469s

✅ TestResults/dotnet-test-results-net8.0-Release-Pool_Enabled-userMode-analyzer.trx

4 tests were completed in 3s with 4 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
ProtoPromise.Analyzer.Tests.ProtoPromiseAnalyzerTests 4✅ 3s

✅ TestResults/dotnet-test-results-net8.0-Release-Pool_Enabled-userMode-core.trx

25176 tests were completed in 3469s with 25176 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
ProtoPromiseTests.APIs.AllSettledTests 22✅ 3s
ProtoPromiseTests.APIs.AllTests 22✅ 3s
ProtoPromiseTests.APIs.APlus_2_1_PromiseStates+_2_1_1_WhenPendingAPromise 2✅ 263ms
ProtoPromiseTests.APIs.APlus_2_1_PromiseStates+_2_1_2_WhenFulfilledAPromise 3✅ 549ms
ProtoPromiseTests.APIs.APlus_2_1_PromiseStates+_2_1_3_WhenRejectedAPromise 4✅ 685ms
ProtoPromiseTests.APIs.APlus_2_2_TheThenMethod 4✅ 630ms
ProtoPromiseTests.APIs.APlus_2_2_TheThenMethod+_2_2_3_IfOnRejectedIsAFunction 6✅ 822ms
ProtoPromiseTests.APIs.APlus_2_2_TheThenMethod+_2_2_6_ThenMayBeCalledMultipleTimesOnTheSamePromise 4✅ 512ms
ProtoPromiseTests.APIs.APlus_2_2_TheThenMethod+IfOnFulfilledIsAFunction_2_2_2 5✅ 590ms
ProtoPromiseTests.APIs.APlus_2_2_TheThenMethod+ThenMustReturnAPromise_2_2_7 20✅ 2s
ProtoPromiseTests.APIs.APlus_2_3_ThePromiseResolutionProcedure 4✅ 582ms
ProtoPromiseTests.APIs.APlus_2_3_ThePromiseResolutionProcedure+_2_3_2_IfXIsAPromiseAdoptItsState 5✅ 673ms
ProtoPromiseTests.APIs.AsyncFunctionTests 22✅ 2s
ProtoPromiseTests.APIs.AsyncLocalTests 4✅ 405ms
ProtoPromiseTests.APIs.AwaitTests 52✅ 5s
ProtoPromiseTests.APIs.CancelationTests+Registration 40✅ 8s
ProtoPromiseTests.APIs.CancelationTests+Source 46✅ 5s
ProtoPromiseTests.APIs.CancelationTests+Token 35✅ 3s
ProtoPromiseTests.APIs.CaptureTests 24✅ 2s
ProtoPromiseTests.APIs.Channels.BoundedChannelTests 63✅ 6s
ProtoPromiseTests.APIs.Channels.UnboundedChannelTests 39✅ 4s
ProtoPromiseTests.APIs.Collections.TempCollectionTests 30✅ 3s
ProtoPromiseTests.APIs.ConfigureAwaitTests 612✅ 59s
ProtoPromiseTests.APIs.ConfigureContinuationTests 846✅ 84s
ProtoPromiseTests.APIs.ContinuewithTests 16✅ 2s
ProtoPromiseTests.APIs.EachTests 502✅ 50s
ProtoPromiseTests.APIs.FinallyTests 132✅ 13s
ProtoPromiseTests.APIs.FirstTests 100✅ 10s
ProtoPromiseTests.APIs.Linq.AggregateAsyncTests 72✅ 7s
ProtoPromiseTests.APIs.Linq.AggregateBySeedSelectorTests 416✅ 42s
ProtoPromiseTests.APIs.Linq.AggregateBySingleSeedTests 240✅ 24s
ProtoPromiseTests.APIs.Linq.AllAsyncTests 48✅ 5s
ProtoPromiseTests.APIs.Linq.AnyAsyncTests 58✅ 6s
ProtoPromiseTests.APIs.Linq.AppendPrependTests 114✅ 11s
ProtoPromiseTests.APIs.Linq.AsyncEnumerableTests 127✅ 13s
ProtoPromiseTests.APIs.Linq.AverageAsyncTests 30✅ 3s
ProtoPromiseTests.APIs.Linq.ChunkTests 15✅ 1s
ProtoPromiseTests.APIs.Linq.ConcatTests 49✅ 5s
ProtoPromiseTests.APIs.Linq.ContainsAsyncTests 10✅ 1000ms
ProtoPromiseTests.APIs.Linq.CountAsyncTests 35✅ 3s
ProtoPromiseTests.APIs.Linq.CountByTests 144✅ 14s
ProtoPromiseTests.APIs.Linq.DefaultIfEmptyTests 22✅ 2s
ProtoPromiseTests.APIs.Linq.DistinctTests 146✅ 14s
ProtoPromiseTests.APIs.Linq.ElementAtTests 42✅ 4s
ProtoPromiseTests.APIs.Linq.ExceptTests 223✅ 22s
ProtoPromiseTests.APIs.Linq.FirstOrDefaultTests 154✅ 16s
ProtoPromiseTests.APIs.Linq.FirstTests 77✅ 8s
ProtoPromiseTests.APIs.Linq.ForEachAsyncTests 48✅ 5s
ProtoPromiseTests.APIs.Linq.GroupByTests 328✅ 34s
ProtoPromiseTests.APIs.Linq.GroupJoinTests 368✅ 38s
ProtoPromiseTests.APIs.Linq.IndexTests 4✅ 444ms
ProtoPromiseTests.APIs.Linq.IntersectTests 223✅ 23s
ProtoPromiseTests.APIs.Linq.JoinTests 448✅ 47s
ProtoPromiseTests.APIs.Linq.LastOrDefaultTests 154✅ 16s
ProtoPromiseTests.APIs.Linq.LastTests 77✅ 8s
ProtoPromiseTests.APIs.Linq.LongCountAsyncTests 35✅ 4s
ProtoPromiseTests.APIs.Linq.MaxAsyncTests 22✅ 2s
ProtoPromiseTests.APIs.Linq.MaxByAsyncTests 120✅ 13s
ProtoPromiseTests.APIs.Linq.MergeTests 33✅ 4s
ProtoPromiseTests.APIs.Linq.MinAsyncTests 22✅ 2s
ProtoPromiseTests.APIs.Linq.MinByAsyncTests 120✅ 13s
ProtoPromiseTests.APIs.Linq.OrderByTests 768✅ 81s
ProtoPromiseTests.APIs.Linq.ReverseTests 11✅ 1s
ProtoPromiseTests.APIs.Linq.SelectManyNoResultSelectorTests 152✅ 16s
ProtoPromiseTests.APIs.Linq.SelectManyWithResultSelectorTests 336✅ 35s
ProtoPromiseTests.APIs.Linq.SelectTests 72✅ 8s
ProtoPromiseTests.APIs.Linq.SequenceEqualAsyncTests 64✅ 7s
ProtoPromiseTests.APIs.Linq.SingleOrDefaultTests 154✅ 16s
ProtoPromiseTests.APIs.Linq.SingleTests 77✅ 8s
ProtoPromiseTests.APIs.Linq.SkipAndTakeTests 784✅ 83s
ProtoPromiseTests.APIs.Linq.SkipWhileTests 144✅ 15s
ProtoPromiseTests.APIs.Linq.SumAsyncTests 30✅ 3s
ProtoPromiseTests.APIs.Linq.TakeWhileTests 144✅ 15s
ProtoPromiseTests.APIs.Linq.ToArrayAsyncTests 6✅ 718ms
ProtoPromiseTests.APIs.Linq.ToAsyncEnumerableTests 113✅ 12s
ProtoPromiseTests.APIs.Linq.ToDictionaryAsyncTests 312✅ 33s
ProtoPromiseTests.APIs.Linq.ToHashSetAsyncTests 12✅ 1s
ProtoPromiseTests.APIs.Linq.ToListAsyncTests 6✅ 637ms
ProtoPromiseTests.APIs.Linq.ToLookupAsyncTests 208✅ 22s
ProtoPromiseTests.APIs.Linq.UnionTests 1266✅ 139s
ProtoPromiseTests.APIs.Linq.WhereTests 72✅ 8s
ProtoPromiseTests.APIs.Linq.ZipTests 17✅ 2s
ProtoPromiseTests.APIs.MergeSettledTests 594✅ 66s
ProtoPromiseTests.APIs.MergeTests 10✅ 1s
ProtoPromiseTests.APIs.MiscellaneousTests 126✅ 50s
ProtoPromiseTests.APIs.NewAndRunTests 448✅ 49s
ProtoPromiseTests.APIs.ParallelForEachAsyncTests 30✅ 4s
ProtoPromiseTests.APIs.ParallelForTests 41✅ 5s
ProtoPromiseTests.APIs.PromiseCancelationTests 19✅ 2s
ProtoPromiseTests.APIs.PromiseCancelationTests+CancelationToken 28✅ 3s
ProtoPromiseTests.APIs.PromiseCancelationTests+CancelationToken+Reject 6✅ 672ms
ProtoPromiseTests.APIs.PromiseCancelationTests+CatchCancelationMayBeCalledMultipleTimesOnTheSamePromise 2✅ 221ms
ProtoPromiseTests.APIs.PromiseCancelationTests+IfOnCanceledIsAFunction 5✅ 552ms
ProtoPromiseTests.APIs.PromiseCancelationTests+ThePromiseResolutionProcedure 2✅ 221ms
ProtoPromiseTests.APIs.PromiseCancelationTests+ThePromiseResolutionProcedure+IfXIsAPromiseAdoptItsState 6✅ 662ms
ProtoPromiseTests.APIs.PromiseCancelationTests+WhenCanceledAPromise 2✅ 217ms
ProtoPromiseTests.APIs.PromiseCancelationTests+WhenFulfilledAPromise 2✅ 218ms
ProtoPromiseTests.APIs.PromiseCancelationTests+WhenPendingAPromise 2✅ 220ms
ProtoPromiseTests.APIs.PromiseCancelationTests+WhenRejectedAPromise 2✅ 224ms
ProtoPromiseTests.APIs.PromiseGroups.PromiseAllGroupTests 544✅ 59s
ProtoPromiseTests.APIs.PromiseGroups.PromiseAllResultsGroupTests 1082✅ 118s
ProtoPromiseTests.APIs.PromiseGroups.PromiseEachGroupTests 678✅ 74s
ProtoPromiseTests.APIs.PromiseGroups.PromiseMergeGroupTests 1276✅ 142s
ProtoPromiseTests.APIs.PromiseGroups.PromiseMergeResultsGroupTests 1287✅ 144s
ProtoPromiseTests.APIs.PromiseGroups.PromiseRaceGroupTests 1272✅ 142s
ProtoPromiseTests.APIs.PromiseGroups.PromiseRaceWithIndexGroupTests 1272✅ 143s
ProtoPromiseTests.APIs.RaceTests 76✅ 9s
ProtoPromiseTests.APIs.SequenceTests 15✅ 2s
ProtoPromiseTests.APIs.Threading.AsyncAutoResetEventTests 26✅ 3s
ProtoPromiseTests.APIs.Threading.AsyncConditionVariableTests 29✅ 3s
ProtoPromiseTests.APIs.Threading.AsyncCountdownEventTests 28✅ 4s
ProtoPromiseTests.APIs.Threading.AsyncLockTests 21✅ 3s
ProtoPromiseTests.APIs.Threading.AsyncManualResetEventTests 27✅ 4s
ProtoPromiseTests.APIs.Threading.AsyncMonitorTests 38✅ 5s
ProtoPromiseTests.APIs.Threading.AsyncReaderWriterLockTests 215✅ 25s
ProtoPromiseTests.APIs.Threading.AsyncSemaphoreTests 29✅ 3s
ProtoPromiseTests.APIs.UncaughtRejectionTests 76✅ 9s
ProtoPromiseTests.APIs.Utilities.AsyncLazyTests 18✅ 2s
ProtoPromiseTests.APIs.Utilities.AsyncLazyWithProgressTests 33✅ 4s
ProtoPromiseTests.APIs.Utilities.ProgressTests 148✅ 17s
ProtoPromiseTests.APIs.WaitAsyncTests 54✅ 6s
ProtoPromiseTests.Concurrency.AllConcurrencyTests 144✅ 23s
ProtoPromiseTests.Concurrency.ApiWithCancelationTokenConcurrencyTests 12✅ 5s
ProtoPromiseTests.Concurrency.AwaitConcurrencyTests 18✅ 2s
ProtoPromiseTests.Concurrency.CancelationConcurrencyTests 43✅ 8s
ProtoPromiseTests.Concurrency.Channels.BoundedChannelConcurrencyTests 432✅ 51s
ProtoPromiseTests.Concurrency.Channels.UnboundedChannelConcurrencyTests 135✅ 16s
ProtoPromiseTests.Concurrency.DeferredConcurrencyTests 12✅ 1s
ProtoPromiseTests.Concurrency.DeferredThreadTests 10✅ 1s
ProtoPromiseTests.Concurrency.EachConcurrencyTests 72✅ 33s
ProtoPromiseTests.Concurrency.FirstConcurrencyTests 144✅ 22s
ProtoPromiseTests.Concurrency.Linq.AsyncEnumerableMergeConcurrencyTests 2✅ 249ms
ProtoPromiseTests.Concurrency.MergeConcurrencyTests 90✅ 93s
ProtoPromiseTests.Concurrency.PromiseConcurrencyTests 62✅ 17s
ProtoPromiseTests.Concurrency.PromiseGroups.PromiseAllGroupConcurrencyTests 144✅ 20s
ProtoPromiseTests.Concurrency.PromiseGroups.PromiseAllResultsGroupConcurrencyTests 144✅ 20s
ProtoPromiseTests.Concurrency.PromiseGroups.PromiseEachGroupConcurrencyTests 576✅ 118s
ProtoPromiseTests.Concurrency.PromiseGroups.PromiseMergeGroupConcurrencyTests 216✅ 37s
ProtoPromiseTests.Concurrency.PromiseGroups.PromiseMergeResultsGroupConcurrencyTests 216✅ 35s
ProtoPromiseTests.Concurrency.PromiseGroups.PromiseRaceGroupConcurrencyTests 288✅ 41s
ProtoPromiseTests.Concurrency.PromiseGroups.PromiseRaceWithIndexGroupConcurrencyTests 288✅ 41s
ProtoPromiseTests.Concurrency.PromiseNonPreservedConcurrencyTests 158✅ 23s
ProtoPromiseTests.Concurrency.RaceConcurrencyTests 144✅ 25s
ProtoPromiseTests.Concurrency.Threading.AsyncAutoResetEventConcurrencyTests 8✅ 3s
ProtoPromiseTests.Concurrency.Threading.AsyncCountdownEventConcurrencyTests 16✅ 7s
ProtoPromiseTests.Concurrency.Threading.AsyncLockConcurrencyTests 12✅ 128s
ProtoPromiseTests.Concurrency.Threading.AsyncManualResetEventConcurrencyTests 8✅ 2s
ProtoPromiseTests.Concurrency.Threading.AsyncReaderWriterLockConcurrencyTests 654✅ 326s
ProtoPromiseTests.Concurrency.Threading.AsyncSemaphoreConcurrencyTests 12✅ 58s
ProtoPromiseTests.Concurrency.Utilities.AsyncLazyConcurrencyTests 3✅ 735ms
ProtoPromiseTests.Concurrency.Utilities.ProgressConcurrencyTests 60✅ 11s
ProtoPromiseTests.Concurrency.WaitAsyncConcurrencyTests 48✅ 6s