@@ -41,7 +41,6 @@ public void GetOrCreate_Ok()
4141 Assert . NotNull ( client5 ) ;
4242
4343 client5 . Dispose ( ) ;
44-
4544 factory . Dispose ( ) ;
4645 }
4746
@@ -73,8 +72,8 @@ public async Task SendAsync_Error()
7372 var client = CreateClient ( ) ;
7473
7574 // 测试未建立连接前调用 SendAsync 方法报异常逻辑
76- var data = new Memory < byte > ( [ 1 , 2 , 3 , 4 , 5 ] ) ;
77- var ex = await Assert . ThrowsAsync < InvalidOperationException > ( ( ) => client . SendAsync ( data ) ) ;
75+ var data = new ReadOnlyMemory < byte > ( [ 1 , 2 , 3 , 4 , 5 ] ) ;
76+ var ex = await Assert . ThrowsAsync < InvalidOperationException > ( async ( ) => await client . SendAsync ( data ) ) ;
7877 Assert . Equal ( "TCP Socket is not connected 127.0.0.1:0" , ex . Message ) ;
7978 }
8079
@@ -95,7 +94,7 @@ public async Task SendAsync_Cancel()
9594 var cst = new CancellationTokenSource ( ) ;
9695 cst . Cancel ( ) ;
9796
98- var data = new Memory < byte > ( [ 1 , 2 , 3 , 4 , 5 ] ) ;
97+ var data = new ReadOnlyMemory < byte > ( [ 1 , 2 , 3 , 4 , 5 ] ) ;
9998 var result = await client . SendAsync ( data , cst . Token ) ;
10099 Assert . False ( result ) ;
101100
@@ -131,7 +130,7 @@ public async Task ReceiveAsync_Error()
131130 var methodInfo = client . GetType ( ) . GetMethod ( "ReceiveAsync" , System . Reflection . BindingFlags . NonPublic | System . Reflection . BindingFlags . Instance ) ;
132131 Assert . NotNull ( methodInfo ) ;
133132
134- var task = ( Task ) methodInfo . Invoke ( client , null ) ! ;
133+ var task = ( ValueTask ) methodInfo . Invoke ( client , null ) ! ;
135134 var ex = await Assert . ThrowsAsync < InvalidOperationException > ( async ( ) => await task ) ;
136135 Assert . NotNull ( ex ) ;
137136
@@ -147,7 +146,7 @@ public async Task ReceiveAsync_Error()
147146 await client . ConnectAsync ( "localhost" , port ) ;
148147
149148 // 发送数据导致接收数据异常
150- var data = new Memory < byte > ( [ 1 , 2 , 3 , 4 , 5 ] ) ;
149+ var data = new ReadOnlyMemory < byte > ( [ 1 , 2 , 3 , 4 , 5 ] ) ;
151150 await client . SendAsync ( data ) ;
152151
153152 // 关闭连接
@@ -168,7 +167,7 @@ public async Task CloseByRemote_Ok()
168167 await client . ConnectAsync ( "localhost" , port ) ;
169168
170169 // 发送数据
171- await client . SendAsync ( new Memory < byte > ( [ 1 , 2 , 3 , 4 , 5 ] ) ) ;
170+ await client . SendAsync ( new ReadOnlyMemory < byte > ( [ 1 , 2 , 3 , 4 , 5 ] ) ) ;
172171
173172 // 关闭连接
174173 StopTcpServer ( server ) ;
@@ -187,7 +186,7 @@ public async Task FixLengthDataPackageHandler_Ok()
187186 Assert . True ( client . IsConnected ) ;
188187
189188 var tcs = new TaskCompletionSource ( ) ;
190- Memory < byte > receivedBuffer = Memory < byte > . Empty ;
189+ ReadOnlyMemory < byte > receivedBuffer = ReadOnlyMemory < byte > . Empty ;
191190
192191 // 增加数据处理适配器
193192 client . SetDataHandler ( new FixLengthDataPackageHandler ( 7 )
@@ -196,12 +195,12 @@ public async Task FixLengthDataPackageHandler_Ok()
196195 {
197196 receivedBuffer = buffer ;
198197 tcs . SetResult ( ) ;
199- return Task . CompletedTask ;
198+ return ValueTask . CompletedTask ;
200199 }
201200 } ) ;
202201
203202 // 测试 SendAsync 方法
204- var data = new Memory < byte > ( [ 1 , 2 , 3 , 4 , 5 ] ) ;
203+ var data = new ReadOnlyMemory < byte > ( [ 1 , 2 , 3 , 4 , 5 ] ) ;
205204 var result = await client . SendAsync ( data ) ;
206205 Assert . True ( result ) ;
207206
@@ -227,7 +226,7 @@ public async Task FixLengthDataPackageHandler_Sticky()
227226 var connect = await client . ConnectAsync ( "localhost" , port ) ;
228227
229228 var tcs = new TaskCompletionSource ( ) ;
230- Memory < byte > receivedBuffer = Memory < byte > . Empty ;
229+ ReadOnlyMemory < byte > receivedBuffer = ReadOnlyMemory < byte > . Empty ;
231230
232231 // 增加数据库处理适配器
233232 client . SetDataHandler ( new FixLengthDataPackageHandler ( 7 )
@@ -236,20 +235,20 @@ public async Task FixLengthDataPackageHandler_Sticky()
236235 {
237236 receivedBuffer = buffer ;
238237 tcs . SetResult ( ) ;
239- return Task . CompletedTask ;
238+ return ValueTask . CompletedTask ;
240239 }
241240 } ) ;
242241
243242 // 发送数据
244- var data = new Memory < byte > ( [ 1 , 2 , 3 , 4 , 5 ] ) ;
243+ var data = new ReadOnlyMemory < byte > ( [ 1 , 2 , 3 , 4 , 5 ] ) ;
245244 await client . SendAsync ( data ) ;
246245
247246 // 等待接收数据处理完成
248247 await tcs . Task ;
249248
250249 // 验证接收到的数据
251250 Assert . Equal ( receivedBuffer . ToArray ( ) , [ 1 , 2 , 3 , 4 , 5 , 3 , 4 ] ) ;
252- receivedBuffer = Memory < byte > . Empty ;
251+ receivedBuffer = ReadOnlyMemory < byte > . Empty ;
253252 tcs = new TaskCompletionSource ( ) ;
254253
255254 // 等待第二次数据
@@ -282,7 +281,7 @@ public async Task DelimiterDataPackageHandler_Ok()
282281 var connect = await client . ConnectAsync ( "localhost" , port ) ;
283282
284283 var tcs = new TaskCompletionSource ( ) ;
285- Memory < byte > receivedBuffer = Memory < byte > . Empty ;
284+ ReadOnlyMemory < byte > receivedBuffer = ReadOnlyMemory < byte > . Empty ;
286285
287286 // 增加数据库处理适配器
288287 client . SetDataHandler ( new DelimiterDataPackageHandler ( [ 0x13 , 0x10 ] )
@@ -291,12 +290,12 @@ public async Task DelimiterDataPackageHandler_Ok()
291290 {
292291 receivedBuffer = buffer ;
293292 tcs . SetResult ( ) ;
294- return Task . CompletedTask ;
293+ return ValueTask . CompletedTask ;
295294 }
296295 } ) ;
297296
298297 // 发送数据
299- var data = new Memory < byte > ( [ 1 , 2 , 3 , 4 , 5 ] ) ;
298+ var data = new ReadOnlyMemory < byte > ( [ 1 , 2 , 3 , 4 , 5 ] ) ;
300299 await client . SendAsync ( data ) ;
301300
302301 // 等待接收数据处理完成
@@ -306,7 +305,7 @@ public async Task DelimiterDataPackageHandler_Ok()
306305 Assert . Equal ( receivedBuffer . ToArray ( ) , [ 1 , 2 , 3 , 4 , 5 , 0x13 , 0x10 ] ) ;
307306
308307 // 等待第二次数据
309- receivedBuffer = Memory < byte > . Empty ;
308+ receivedBuffer = ReadOnlyMemory < byte > . Empty ;
310309 tcs = new TaskCompletionSource ( ) ;
311310 await tcs . Task ;
312311
@@ -355,7 +354,7 @@ private static async Task MockDelimiterPackageAsync(TcpClient client)
355354 }
356355
357356 // 回写数据到客户端
358- var block = new Memory < byte > ( buffer , 0 , len ) ;
357+ var block = new ReadOnlyMemory < byte > ( buffer , 0 , len ) ;
359358 await stream . WriteAsync ( block , CancellationToken . None ) ;
360359
361360 await Task . Delay ( 20 ) ;
@@ -378,7 +377,7 @@ private static async Task MockSplitPackageAsync(TcpClient client)
378377 }
379378
380379 // 回写数据到客户端
381- var block = new Memory < byte > ( buffer , 0 , len ) ;
380+ var block = new ReadOnlyMemory < byte > ( buffer , 0 , len ) ;
382381 await stream . WriteAsync ( block , CancellationToken . None ) ;
383382
384383 // 模拟延时
@@ -402,7 +401,7 @@ private static async Task MockStickyPackageAsync(TcpClient client)
402401 }
403402
404403 // 回写数据到客户端
405- var block = new Memory < byte > ( buffer , 0 , len ) ;
404+ var block = new ReadOnlyMemory < byte > ( buffer , 0 , len ) ;
406405 await stream . WriteAsync ( block , CancellationToken . None ) ;
407406
408407 // 模拟延时
@@ -479,7 +478,7 @@ class MockSendErrorHandler : DataPackageHandlerBase
479478 {
480479 public ITcpSocketClient ? Socket { get ; set ; }
481480
482- public override async Task < Memory < byte > > SendAsync ( Memory < byte > data )
481+ public override async ValueTask < ReadOnlyMemory < byte > > SendAsync ( ReadOnlyMemory < byte > data )
483482 {
484483 Socket ? . Close ( ) ;
485484 await Task . Delay ( 10 ) ;
@@ -489,12 +488,12 @@ public override async Task<Memory<byte>> SendAsync(Memory<byte> data)
489488
490489 class MockReceiveErrorHandler : DataPackageHandlerBase
491490 {
492- public override Task < Memory < byte > > SendAsync ( Memory < byte > data )
491+ public override ValueTask < ReadOnlyMemory < byte > > SendAsync ( ReadOnlyMemory < byte > data )
493492 {
494- return Task . FromResult ( data ) ;
493+ return ValueTask . FromResult ( data ) ;
495494 }
496495
497- public override async Task ReceiveAsync ( Memory < byte > data )
496+ public override async ValueTask ReceiveAsync ( ReadOnlyMemory < byte > data )
498497 {
499498 await base . ReceiveAsync ( data ) ;
500499
0 commit comments