diff --git a/src/ImageSharp/Advanced/ParallelRowIterator.cs b/src/ImageSharp/Advanced/ParallelRowIterator.cs
index 98c2656d11..f404326bce 100644
--- a/src/ImageSharp/Advanced/ParallelRowIterator.cs
+++ b/src/ImageSharp/Advanced/ParallelRowIterator.cs
@@ -44,7 +44,6 @@ public static partial class ParallelRowIterator
where T : struct, IRowOperation
{
ValidateRectangle(rectangle);
- ValidateSettings(parallelSettings);
int top = rectangle.Top;
int bottom = rectangle.Bottom;
@@ -109,7 +108,6 @@ public static partial class ParallelRowIterator
where TBuffer : unmanaged
{
ValidateRectangle(rectangle);
- ValidateSettings(parallelSettings);
int top = rectangle.Top;
int bottom = rectangle.Bottom;
@@ -174,7 +172,6 @@ public static partial class ParallelRowIterator
where T : struct, IRowIntervalOperation
{
ValidateRectangle(rectangle);
- ValidateSettings(parallelSettings);
int top = rectangle.Top;
int bottom = rectangle.Bottom;
@@ -236,7 +233,6 @@ public static partial class ParallelRowIterator
where TBuffer : unmanaged
{
ValidateRectangle(rectangle);
- ValidateSettings(parallelSettings);
int top = rectangle.Top;
int bottom = rectangle.Bottom;
@@ -315,35 +311,4 @@ public static partial class ParallelRowIterator
0,
$"{nameof(rectangle)}.{nameof(rectangle.Height)}");
}
-
- ///
- /// Validates the supplied .
- ///
- /// The execution settings.
- ///
- /// Thrown when or
- /// is invalid.
- ///
- ///
- /// Thrown when is null.
- /// This also guards the public default value, which bypasses constructor validation.
- ///
- private static void ValidateSettings(in ParallelExecutionSettings parallelSettings)
- {
- // ParallelExecutionSettings is a public struct, so callers can pass default and bypass constructor validation.
- if (parallelSettings.MaxDegreeOfParallelism is 0 or < -1)
- {
- throw new ArgumentOutOfRangeException(
- $"{nameof(parallelSettings)}.{nameof(ParallelExecutionSettings.MaxDegreeOfParallelism)}");
- }
-
- Guard.MustBeGreaterThan(
- parallelSettings.MinimumPixelsProcessedPerTask,
- 0,
- $"{nameof(parallelSettings)}.{nameof(ParallelExecutionSettings.MinimumPixelsProcessedPerTask)}");
-
- Guard.NotNull(
- parallelSettings.MemoryAllocator,
- $"{nameof(parallelSettings)}.{nameof(ParallelExecutionSettings.MemoryAllocator)}");
- }
}
diff --git a/tests/ImageSharp.Tests/Helpers/ParallelRowIteratorTests.cs b/tests/ImageSharp.Tests/Helpers/ParallelRowIteratorTests.cs
index cf68f702ac..017926fc5d 100644
--- a/tests/ImageSharp.Tests/Helpers/ParallelRowIteratorTests.cs
+++ b/tests/ImageSharp.Tests/Helpers/ParallelRowIteratorTests.cs
@@ -224,24 +224,6 @@ public class ParallelRowIteratorTests
Assert.Equal(Enumerable.Repeat(1, rectangle.Height), actualData);
}
- [Fact]
- public void IterateRowsWithTempBuffer_DefaultSettingsRequireInitialization()
- {
- ParallelExecutionSettings parallelSettings = default;
- Rectangle rect = new(0, 0, 10, 10);
-
- void RowAction(int y, Span memory)
- {
- }
-
- TestRowOperation operation = new(RowAction);
-
- ArgumentOutOfRangeException ex = Assert.Throws(
- () => ParallelRowIterator.IterateRows, Rgba32>(rect, in parallelSettings, in operation));
-
- Assert.Contains(nameof(ParallelExecutionSettings.MaxDegreeOfParallelism), ex.Message);
- }
-
public static TheoryData IterateRows_WithEffectiveMinimumPixelsLimit_Data =
new()
{
@@ -367,24 +349,6 @@ public class ParallelRowIteratorTests
Assert.Equal(Enumerable.Repeat(1, rectangle.Height), actualData);
}
- [Fact]
- public void IterateRows_DefaultSettingsRequireInitialization()
- {
- ParallelExecutionSettings parallelSettings = default;
- Rectangle rect = new(0, 0, 10, 10);
-
- void RowAction(int y)
- {
- }
-
- TestRowActionOperation operation = new(RowAction);
-
- ArgumentOutOfRangeException ex = Assert.Throws(
- () => ParallelRowIterator.IterateRows(rect, in parallelSettings, in operation));
-
- Assert.Contains(nameof(ParallelExecutionSettings.MaxDegreeOfParallelism), ex.Message);
- }
-
public static readonly TheoryData IterateRectangularBuffer_Data =
new()
{