Skip to content

Commit d991f44

Browse files
committed
PR feedback
1 parent e8a5921 commit d991f44

File tree

12 files changed

+30
-18
lines changed

12 files changed

+30
-18
lines changed

src/Servers/Connections.Abstractions/src/IMemoryPoolFactory.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,5 @@ public interface IMemoryPoolFactory<T>
1515
/// </summary>
1616
/// <param name="options">Options for configuring the memory pool.</param>
1717
/// <returns>A new memory pool instance.</returns>
18-
MemoryPool<T> Create(MemoryPoolOptions options);
18+
MemoryPool<T> Create(MemoryPoolOptions? options = null);
1919
}

src/Servers/Connections.Abstractions/src/PublicAPI/net10.0/PublicAPI.Unshipped.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#nullable enable
22
Microsoft.AspNetCore.Connections.IMemoryPoolFactory<T>
3-
Microsoft.AspNetCore.Connections.IMemoryPoolFactory<T>.Create(Microsoft.AspNetCore.Connections.MemoryPoolOptions! options) -> System.Buffers.MemoryPool<T>!
3+
Microsoft.AspNetCore.Connections.IMemoryPoolFactory<T>.Create(Microsoft.AspNetCore.Connections.MemoryPoolOptions? options = null) -> System.Buffers.MemoryPool<T>!
44
Microsoft.AspNetCore.Connections.MemoryPoolOptions
55
Microsoft.AspNetCore.Connections.MemoryPoolOptions.MemoryPoolOptions() -> void
66
Microsoft.AspNetCore.Connections.MemoryPoolOptions.Owner.get -> string?

src/Servers/Connections.Abstractions/src/PublicAPI/net462/PublicAPI.Unshipped.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#nullable enable
22
Microsoft.AspNetCore.Connections.IMemoryPoolFactory<T>
3-
Microsoft.AspNetCore.Connections.IMemoryPoolFactory<T>.Create(Microsoft.AspNetCore.Connections.MemoryPoolOptions! options) -> System.Buffers.MemoryPool<T>!
3+
Microsoft.AspNetCore.Connections.IMemoryPoolFactory<T>.Create(Microsoft.AspNetCore.Connections.MemoryPoolOptions? options = null) -> System.Buffers.MemoryPool<T>!
44
Microsoft.AspNetCore.Connections.MemoryPoolOptions
55
Microsoft.AspNetCore.Connections.MemoryPoolOptions.MemoryPoolOptions() -> void
66
Microsoft.AspNetCore.Connections.MemoryPoolOptions.Owner.get -> string?

src/Servers/Connections.Abstractions/src/PublicAPI/netstandard2.0/PublicAPI.Unshipped.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#nullable enable
22
Microsoft.AspNetCore.Connections.IMemoryPoolFactory<T>
3-
Microsoft.AspNetCore.Connections.IMemoryPoolFactory<T>.Create(Microsoft.AspNetCore.Connections.MemoryPoolOptions! options) -> System.Buffers.MemoryPool<T>!
3+
Microsoft.AspNetCore.Connections.IMemoryPoolFactory<T>.Create(Microsoft.AspNetCore.Connections.MemoryPoolOptions? options = null) -> System.Buffers.MemoryPool<T>!
44
Microsoft.AspNetCore.Connections.MemoryPoolOptions
55
Microsoft.AspNetCore.Connections.MemoryPoolOptions.MemoryPoolOptions() -> void
66
Microsoft.AspNetCore.Connections.MemoryPoolOptions.Owner.get -> string?

src/Servers/Connections.Abstractions/src/PublicAPI/netstandard2.1/PublicAPI.Unshipped.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#nullable enable
22
Microsoft.AspNetCore.Connections.IMemoryPoolFactory<T>
3-
Microsoft.AspNetCore.Connections.IMemoryPoolFactory<T>.Create(Microsoft.AspNetCore.Connections.MemoryPoolOptions! options) -> System.Buffers.MemoryPool<T>!
3+
Microsoft.AspNetCore.Connections.IMemoryPoolFactory<T>.Create(Microsoft.AspNetCore.Connections.MemoryPoolOptions? options = null) -> System.Buffers.MemoryPool<T>!
44
Microsoft.AspNetCore.Connections.MemoryPoolOptions
55
Microsoft.AspNetCore.Connections.MemoryPoolOptions.MemoryPoolOptions() -> void
66
Microsoft.AspNetCore.Connections.MemoryPoolOptions.Owner.get -> string?

src/Servers/Kestrel/Core/src/Internal/PinnedBlockMemoryPoolFactory.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@ public PinnedBlockMemoryPoolFactory(MemoryPoolMetrics metrics, TimeProvider? tim
2424
_logger = logger;
2525
}
2626

27-
public MemoryPool<byte> Create(MemoryPoolOptions options)
27+
public MemoryPool<byte> Create(MemoryPoolOptions? options = null)
2828
{
29-
var pool = new PinnedBlockMemoryPool(options.Owner, _metrics, _logger);
29+
var pool = new PinnedBlockMemoryPool(options?.Owner, _metrics, _logger);
3030

3131
_pools.TryAdd(pool, nuint.Zero);
3232

src/Servers/Kestrel/Core/test/PinnedBlockMemoryPoolFactoryTests.cs

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,17 +17,26 @@ public class PinnedBlockMemoryPoolFactoryTests
1717
public void CreatePool()
1818
{
1919
var factory = CreateMemoryPoolFactory();
20-
var pool = factory.Create(new MemoryPoolOptions());
20+
var pool = factory.Create();
2121
Assert.NotNull(pool);
2222
Assert.IsType<PinnedBlockMemoryPool>(pool);
2323
}
2424

25+
[Fact]
26+
public void CreatePoolWithOwner()
27+
{
28+
var factory = CreateMemoryPoolFactory();
29+
var pool = factory.Create(new MemoryPoolOptions { Owner = "test" });
30+
Assert.NotNull(pool);
31+
Assert.Equal("test", Assert.IsType<PinnedBlockMemoryPool>(pool).Owner);
32+
}
33+
2534
[Fact]
2635
public void CreateMultiplePools()
2736
{
2837
var factory = CreateMemoryPoolFactory();
29-
var pool1 = factory.Create(new MemoryPoolOptions());
30-
var pool2 = factory.Create(new MemoryPoolOptions());
38+
var pool1 = factory.Create();
39+
var pool2 = factory.Create();
3140

3241
Assert.NotNull(pool1);
3342
Assert.NotNull(pool2);
@@ -38,7 +47,7 @@ public void CreateMultiplePools()
3847
public void DisposePoolRemovesFromFactory()
3948
{
4049
var factory = CreateMemoryPoolFactory();
41-
var pool = factory.Create(new MemoryPoolOptions());
50+
var pool = factory.Create();
4251
Assert.NotNull(pool);
4352

4453
var dict = (ConcurrentDictionary<PinnedBlockMemoryPool, nuint>)(typeof(PinnedBlockMemoryPoolFactory)
@@ -57,8 +66,8 @@ public async Task FactoryHeartbeatWorks()
5766
var factory = CreateMemoryPoolFactory(timeProvider);
5867

5968
// Use 2 pools to make sure they all get triggered by the heartbeat
60-
var pool = Assert.IsType<PinnedBlockMemoryPool>(factory.Create(new MemoryPoolOptions()));
61-
var pool2 = Assert.IsType<PinnedBlockMemoryPool>(factory.Create(new MemoryPoolOptions()));
69+
var pool = Assert.IsType<PinnedBlockMemoryPool>(factory.Create());
70+
var pool2 = Assert.IsType<PinnedBlockMemoryPool>(factory.Create());
6271

6372
var blocks = new List<IMemoryOwner<byte>>();
6473
for (var i = 0; i < 10000; i++)

src/Servers/Kestrel/shared/DefaultSimpleMemoryPoolFactory.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ internal sealed class DefaultSimpleMemoryPoolFactory : IMemoryPoolFactory<byte>
1010
{
1111
public static DefaultSimpleMemoryPoolFactory Instance { get; } = new DefaultSimpleMemoryPoolFactory();
1212

13-
public MemoryPool<byte> Create(MemoryPoolOptions options)
13+
public MemoryPool<byte> Create(MemoryPoolOptions? options = null)
1414
{
1515
return MemoryPool<byte>.Shared;
1616
}

src/Servers/Kestrel/shared/test/TestServiceContext.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,6 @@ public WrappingMemoryPoolFactory(Func<MemoryPool<byte>> memoryPoolFactory)
8787
_memoryPoolFactory = memoryPoolFactory;
8888
}
8989

90-
public MemoryPool<byte> Create(MemoryPoolOptions options) => _memoryPoolFactory();
90+
public MemoryPool<byte> Create(MemoryPoolOptions options = null) => _memoryPoolFactory();
9191
}
9292
}

src/Servers/Kestrel/shared/test/TransportTestHelpers/DiagnosticMemoryPoolFactory.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,11 @@ public DiagnosticMemoryPoolFactory(bool allowLateReturn = false, bool rentTracki
2525
_pools = new List<DiagnosticMemoryPool>();
2626
}
2727

28-
public MemoryPool<byte> Create(MemoryPoolOptions options)
28+
public MemoryPool<byte> Create(MemoryPoolOptions options = null)
2929
{
3030
lock (_pools)
3131
{
32-
var pool = new DiagnosticMemoryPool(new PinnedBlockMemoryPool(), _allowLateReturn, _rentTracking);
32+
var pool = new DiagnosticMemoryPool(new PinnedBlockMemoryPool(options?.Owner), _allowLateReturn, _rentTracking);
3333
_pools.Add(pool);
3434
return pool;
3535
}

0 commit comments

Comments
 (0)