@@ -1466,11 +1466,11 @@ public Task<Message> RequestAsync(Message message)
1466
1466
1467
1467
Message IRequestChannel . Request ( Message message ) => ( ( IRequestChannel ) this ) . Request ( message , DefaultSendTimeout ) ;
1468
1468
1469
- Message IRequestChannel . Request ( Message message , TimeSpan timeout ) => RequestAsyncInternal ( message , timeout ) . WaitForCompletionNoSpin ( ) ;
1469
+ Message IRequestChannel . Request ( Message message , TimeSpan timeout ) => RequestAsync ( message , timeout ) . WaitForCompletionNoSpin ( ) ;
1470
1470
1471
1471
IAsyncResult IRequestChannel . BeginRequest ( Message message , AsyncCallback callback , object state ) => ( ( IRequestChannel ) this ) . BeginRequest ( message , DefaultSendTimeout , callback , state ) ;
1472
1472
1473
- IAsyncResult IRequestChannel . BeginRequest ( Message message , TimeSpan timeout , AsyncCallback callback , object state ) => RequestAsyncInternal ( message , timeout ) . ToApm ( callback , state ) ;
1473
+ IAsyncResult IRequestChannel . BeginRequest ( Message message , TimeSpan timeout , AsyncCallback callback , object state ) => RequestAsync ( message , timeout ) . ToApm ( callback , state ) ;
1474
1474
1475
1475
Message IRequestChannel . EndRequest ( IAsyncResult result ) => result . ToApmEnd < Message > ( ) ;
1476
1476
@@ -1515,18 +1515,13 @@ private Message ProcessReply(Message reply, TimeSpan timeout, SecurityProtocolCo
1515
1515
return processedReply ;
1516
1516
}
1517
1517
1518
- private async Task < Message > RequestAsyncInternal ( Message message , TimeSpan timeout )
1519
- {
1520
- await TaskHelpers . EnsureDefaultTaskScheduler ( ) ;
1521
- return await RequestAsync ( message , timeout ) ;
1522
- }
1523
-
1524
1518
public async Task < Message > RequestAsync ( Message message , TimeSpan timeout )
1525
1519
{
1526
1520
ThrowIfFaulted ( ) ;
1527
1521
CheckOutputOpen ( ) ;
1528
1522
TimeoutHelper timeoutHelper = new TimeoutHelper ( timeout ) ;
1529
1523
SecurityProtocolCorrelationState correlationState ;
1524
+ await TaskHelpers . EnsureDefaultTaskScheduler ( ) ;
1530
1525
( correlationState , message ) = await SecureOutgoingMessageAsync ( message , timeoutHelper . RemainingTime ( ) ) ;
1531
1526
Message reply = await ChannelBinder . RequestAsync ( message , timeoutHelper . RemainingTime ( ) ) ;
1532
1527
return ProcessReply ( reply , timeoutHelper . RemainingTime ( ) , correlationState ) ;
@@ -1618,6 +1613,7 @@ public bool TryReceive(TimeSpan timeout, out Message message)
1618
1613
public async Task < ( bool , Message ) > TryReceiveAsync ( TimeSpan timeout )
1619
1614
{
1620
1615
ThrowIfFaulted ( ) ;
1616
+ await TaskHelpers . EnsureDefaultTaskScheduler ( ) ;
1621
1617
( bool wasDequeued , Message message ) = await _queue . TryDequeueAsync ( timeout ) ;
1622
1618
if ( message == null )
1623
1619
{
@@ -1627,21 +1623,19 @@ public bool TryReceive(TimeSpan timeout, out Message message)
1627
1623
return ( wasDequeued , message ) ;
1628
1624
}
1629
1625
1630
- public void Send ( Message message ) => SendAsync ( message ) . GetAwaiter ( ) . GetResult ( ) ;
1626
+ public void Send ( Message message ) => SendAsync ( message ) . WaitForCompletionNoSpin ( ) ;
1631
1627
1632
- public Task SendAsync ( Message message )
1633
- {
1634
- return SendAsync ( message , DefaultSendTimeout ) ;
1635
- }
1628
+ public Task SendAsync ( Message message ) => SendAsync ( message , DefaultSendTimeout ) ;
1636
1629
1637
- public void Send ( Message message , TimeSpan timeout ) => SendAsync ( message , timeout ) . GetAwaiter ( ) . GetResult ( ) ;
1630
+ public void Send ( Message message , TimeSpan timeout ) => SendAsync ( message , timeout ) . WaitForCompletionNoSpin ( ) ;
1638
1631
1639
1632
public async Task SendAsync ( Message message , TimeSpan timeout )
1640
1633
{
1641
1634
ThrowIfFaulted ( ) ;
1642
1635
CheckOutputOpen ( ) ;
1643
1636
TimeoutHelper timeoutHelper = new TimeoutHelper ( timeout ) ;
1644
1637
SecurityProtocolCorrelationState dummy ;
1638
+ await TaskHelpers . EnsureDefaultTaskScheduler ( ) ;
1645
1639
( dummy , message ) = await SecureOutgoingMessageAsync ( message , timeoutHelper . RemainingTime ( ) ) ;
1646
1640
await ChannelBinder . SendAsync ( message , timeoutHelper . RemainingTime ( ) ) ;
1647
1641
}
0 commit comments