Skip to content

Commit 44503cf

Browse files
committed
Use CancellationToken.Register on full .NET framework
1 parent 6005075 commit 44503cf

File tree

4 files changed

+16
-0
lines changed

4 files changed

+16
-0
lines changed

src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/ConcurrencyLimiter.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -396,7 +396,11 @@ public RequestRegistration(int permitCount, ConcurrencyLimiter limiter, Cancella
396396
// is going to invoke the callback synchronously, but this does not create
397397
// a deadlock because lock are reentrant
398398
if (cancellationToken.CanBeCanceled)
399+
#if NETCOREAPP || NETSTANDARD2_1
399400
_cancellationTokenRegistration = cancellationToken.UnsafeRegister(Cancel, this) ;
401+
#else
402+
_cancellationTokenRegistration = cancellationToken.Register(Cancel, this) ;
403+
#endif
400404
}
401405

402406
public int Count { get; }

src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/FixedWindowRateLimiter.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -448,7 +448,11 @@ public RequestRegistration(int permitCount, FixedWindowRateLimiter limiter, Canc
448448
// is going to invoke the callback synchronously, but this does not create
449449
// a deadlock because lock are reentrant
450450
if (cancellationToken.CanBeCanceled)
451+
#if NETCOREAPP || NETSTANDARD2_1
451452
_cancellationTokenRegistration = cancellationToken.UnsafeRegister(Cancel, this) ;
453+
#else
454+
_cancellationTokenRegistration = cancellationToken.Register(Cancel, this) ;
455+
#endif
452456
}
453457

454458
public int Count { get; }

src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/SlidingWindowRateLimiter.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -461,7 +461,11 @@ public RequestRegistration(int permitCount, SlidingWindowRateLimiter limiter, Ca
461461
// is going to invoke the callback synchronously, but this does not create
462462
// a deadlock because lock are reentrant
463463
if (cancellationToken.CanBeCanceled)
464+
#if NETCOREAPP || NETSTANDARD2_1
464465
_cancellationTokenRegistration = cancellationToken.UnsafeRegister(Cancel, this) ;
466+
#else
467+
_cancellationTokenRegistration = cancellationToken.Register(Cancel, this) ;
468+
#endif
465469
}
466470

467471
public int Count { get; }

src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/TokenBucketRateLimiter.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -463,7 +463,11 @@ public RequestRegistration(int permitCount, TokenBucketRateLimiter limiter, Canc
463463
// is going to invoke the callback synchronously, but this does not create
464464
// a deadlock because lock are reentrant
465465
if (cancellationToken.CanBeCanceled)
466+
#if NETCOREAPP || NETSTANDARD2_1
466467
_cancellationTokenRegistration = cancellationToken.UnsafeRegister(Cancel, this) ;
468+
#else
469+
_cancellationTokenRegistration = cancellationToken.Register(Cancel, this) ;
470+
#endif
467471
}
468472

469473
public int Count { get; }

0 commit comments

Comments
 (0)