@@ -193,10 +193,10 @@ internal async ValueTask ConnectAsync(CancellationToken ct = default)
193
193
}
194
194
}
195
195
196
- private void BeginProcessing ( IDisposable session )
196
+ private void BeginProcessing ( IAsyncDisposable session )
197
197
=> ProcessMessagesSessionAsync ( session ) . FireAndForget ( ) ;
198
198
199
- private async Task ProcessMessagesSessionAsync ( IDisposable session )
199
+ private async Task ProcessMessagesSessionAsync ( IAsyncDisposable session )
200
200
{
201
201
try
202
202
{
@@ -208,7 +208,7 @@ private async Task ProcessMessagesSessionAsync(IDisposable session)
208
208
}
209
209
finally
210
210
{
211
- session . Dispose ( ) ;
211
+ await session . DisposeAsync ( ) . ConfigureAwait ( false ) ;
212
212
DiagnosticEvents . Disconnected ( Name ) ;
213
213
}
214
214
}
@@ -372,7 +372,7 @@ private MessageEnvelope<TMessage> DeserializeMessage(IMessageSerializer serializ
372
372
/// <returns>
373
373
/// Returns a session to dispose the subscription session.
374
374
/// </returns>
375
- protected virtual ValueTask < IDisposable > OnConnectAsync (
375
+ protected virtual ValueTask < IAsyncDisposable > OnConnectAsync (
376
376
CancellationToken cancellationToken )
377
377
=> new ( DefaultSession . Instance ) ;
378
378
@@ -407,10 +407,11 @@ protected virtual void Dispose(bool disposing)
407
407
}
408
408
}
409
409
410
- private sealed class DefaultSession : IDisposable
410
+ private sealed class DefaultSession : IAsyncDisposable
411
411
{
412
412
private DefaultSession ( ) { }
413
- public void Dispose ( ) { }
413
+
414
+ public ValueTask DisposeAsync ( ) => ValueTask . CompletedTask ;
414
415
415
416
public static readonly DefaultSession Instance = new ( ) ;
416
417
}
0 commit comments