Soenneker.Utils.RateLimiting.Executor 3.0.51

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package Soenneker.Utils.RateLimiting.Executor --version 3.0.51
                    
NuGet\Install-Package Soenneker.Utils.RateLimiting.Executor -Version 3.0.51
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Soenneker.Utils.RateLimiting.Executor" Version="3.0.51" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Soenneker.Utils.RateLimiting.Executor" Version="3.0.51" />
                    
Directory.Packages.props
<PackageReference Include="Soenneker.Utils.RateLimiting.Executor" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Soenneker.Utils.RateLimiting.Executor --version 3.0.51
                    
#r "nuget: Soenneker.Utils.RateLimiting.Executor, 3.0.51"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Soenneker.Utils.RateLimiting.Executor@3.0.51
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Soenneker.Utils.RateLimiting.Executor&version=3.0.51
                    
Install as a Cake Addin
#tool nuget:?package=Soenneker.Utils.RateLimiting.Executor&version=3.0.51
                    
Install as a Cake Tool

alternate text is missing from this package README image alternate text is missing from this package README image alternate text is missing from this package README image

alternate text is missing from this package README image Soenneker.Utils.RateLimiting.Executor

A thread-safe utility designed to manage the rate at which tasks are executed, ensuring they are not run more frequently than a specified interval.

RateLimitingExecutor is ideal for interacting with rate-limited APIs or throttling the execution of resource-intensive tasks.

Sequential Execution

Tasks, ValueTasks, and Actions are executed one at a time. If the defined interval between executions has passed, the task runs immediately; otherwise, it waits until the interval elapses before proceeding.

⚠️ Important Notes:

  • This is not a background queue processor. Each method awaits the result of the asynchronous operation before continuing.

  • Asynchronous methods will not block the calling thread, but synchronous methods will block execution until it completes.

Want to use this with dependency injection?

Check out the singleton factory implementation: Soenneker.Utils.RateLimiting.Factory

Installation

dotnet add package Soenneker.Utils.RateLimiting.Executor

Example: Executing a Loop of Tasks with Rate Limiting

Below is an example demonstrating how to use the RateLimitingExecutor to execute a series of tasks while maintaining a rate limit.

using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Soenneker.Utils.RateLimiting.Executor;

public class Program
{
    public static async Task Main(string[] args)
    {
        var rateLimitingExecutor = new RateLimitingExecutor(TimeSpan.FromSeconds(2));

        for (int i = 0; i < 5; i++)
        {
            await rateLimitingExecutor.Execute(async ct =>
            {
                Console.WriteLine($"Executing Task {i + 1} at {DateTime.Now:HH:mm:ss}");
                await Task.Delay(100); // Simulate some work
            });
        }
    }
}

Console Output

Executing Task 1 at 14:00:00
Executing Task 2 at 14:00:02
Executing Task 3 at 14:00:04
Executing Task 4 at 14:00:06
Executing Task 5 at 14:00:08
Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Soenneker.Utils.RateLimiting.Executor:

Package Downloads
Soenneker.Utils.RateLimiting.Factory

An async thread-safe singleton dictionary for Soenneker.Utils.RateLimiting.Executors, designed to manage the rate at which tasks are executed.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
4.0.452 124 11/21/2025
4.0.451 102 11/20/2025
4.0.450 100 11/20/2025
4.0.449 178 11/20/2025
4.0.448 658 11/11/2025
4.0.447 446 11/6/2025
4.0.446 273 11/6/2025
4.0.445 177 11/3/2025
4.0.444 399 10/30/2025
4.0.443 181 10/30/2025
4.0.442 181 10/30/2025
4.0.441 168 10/30/2025
4.0.440 282 10/29/2025
3.0.439 519 10/16/2025
3.0.438 745 9/9/2025
3.0.437 607 9/3/2025
3.0.436 175 9/3/2025
3.0.435 178 9/3/2025
3.0.434 167 9/3/2025
3.0.433 747 8/11/2025
3.0.432 283 8/11/2025
3.0.431 170 8/11/2025
3.0.430 156 8/11/2025
3.0.429 632 8/5/2025
3.0.428 919 7/9/2025
3.0.427 486 7/4/2025
3.0.426 325 7/3/2025
3.0.425 395 6/28/2025
3.0.424 212 6/27/2025
3.0.423 96 6/27/2025
3.0.422 100 6/27/2025
3.0.421 878 6/11/2025
3.0.420 594 6/3/2025
3.0.419 453 5/27/2025
3.0.418 187 5/27/2025
3.0.417 304 5/27/2025
3.0.416 683 5/23/2025
3.0.415 182 5/23/2025
3.0.414 201 5/22/2025
3.0.413 1,039 5/8/2025
3.0.412 206 5/7/2025
3.0.411 195 5/7/2025
3.0.410 624 5/5/2025
3.0.409 343 5/5/2025
3.0.408 171 5/5/2025
3.0.407 278 5/5/2025
3.0.406 199 5/5/2025
3.0.405 977 4/8/2025
3.0.404 220 4/8/2025
3.0.403 188 4/8/2025
3.0.402 603 4/8/2025
3.0.401 234 4/8/2025
3.0.400 222 4/8/2025
3.0.399 250 4/8/2025
3.0.398 205 4/8/2025
3.0.397 732 4/7/2025
3.0.396 234 4/7/2025
3.0.395 277 4/7/2025
3.0.394 458 4/7/2025
3.0.393 230 4/7/2025
3.0.392 229 4/7/2025
3.0.391 202 4/6/2025
3.0.390 220 4/6/2025
3.0.389 188 4/6/2025
3.0.388 182 4/6/2025
3.0.387 160 4/6/2025
3.0.386 159 4/6/2025
3.0.385 149 4/6/2025
3.0.384 152 4/6/2025
3.0.383 141 4/5/2025
3.0.382 141 4/5/2025
3.0.381 104 4/5/2025
3.0.380 141 4/5/2025
3.0.379 136 4/5/2025
3.0.378 125 4/5/2025
3.0.377 115 4/5/2025
3.0.376 163 4/4/2025
3.0.375 161 4/4/2025
3.0.374 2,109 4/3/2025
3.0.373 390 4/1/2025
3.0.372 275 4/1/2025
3.0.371 322 4/1/2025
3.0.370 276 3/31/2025
3.0.369 182 3/31/2025
3.0.368 322 3/31/2025
3.0.367 445 3/31/2025
3.0.366 278 3/29/2025
3.0.365 129 3/29/2025
3.0.364 184 3/29/2025
3.0.363 856 3/25/2025
3.0.362 562 3/25/2025
3.0.361 499 3/21/2025
3.0.360 227 3/21/2025
3.0.359 628 3/18/2025
3.0.358 358 3/18/2025
3.0.357 371 3/15/2025
3.0.356 97 3/15/2025
3.0.355 625 3/12/2025
3.0.354 244 3/12/2025
3.0.353 349 3/12/2025
3.0.352 227 3/11/2025
3.0.351 470 3/11/2025
3.0.350 309 3/11/2025
3.0.349 193 3/11/2025
3.0.348 633 3/11/2025
3.0.347 529 3/7/2025
3.0.346 471 3/7/2025
3.0.345 457 3/2/2025
3.0.344 228 3/2/2025
3.0.343 242 3/2/2025
3.0.342 143 3/2/2025
3.0.341 157 3/2/2025
3.0.340 329 3/2/2025
3.0.339 343 3/1/2025
3.0.338 150 3/1/2025
3.0.337 134 3/1/2025
3.0.336 673 3/1/2025
3.0.335 197 3/1/2025
3.0.334 130 3/1/2025
3.0.333 285 3/1/2025
3.0.332 145 3/1/2025
3.0.331 123 3/1/2025
3.0.330 493 2/25/2025
3.0.329 224 2/25/2025
3.0.328 280 2/25/2025
3.0.327 333 2/25/2025
3.0.326 227 2/25/2025
3.0.325 600 2/23/2025
3.0.324 236 2/23/2025
3.0.323 141 2/22/2025
3.0.322 574 2/22/2025
3.0.321 294 2/22/2025
3.0.320 198 2/22/2025
3.0.319 313 2/22/2025
3.0.318 143 2/21/2025
3.0.317 340 2/21/2025
3.0.316 392 2/21/2025
3.0.315 493 2/19/2025
3.0.314 202 2/19/2025
3.0.313 197 2/19/2025
3.0.312 142 2/18/2025
3.0.311 475 2/18/2025
3.0.310 261 2/18/2025
3.0.309 152 2/18/2025
3.0.308 685 2/14/2025
3.0.307 137 2/14/2025
3.0.306 278 2/13/2025
3.0.305 614 2/12/2025
3.0.304 197 2/12/2025
3.0.303 276 2/12/2025
3.0.302 307 2/11/2025
3.0.301 272 2/11/2025
3.0.300 499 2/11/2025
3.0.299 404 2/11/2025
3.0.298 153 2/11/2025
3.0.297 306 2/11/2025
3.0.296 288 2/10/2025
3.0.295 223 2/10/2025
3.0.294 309 2/10/2025
3.0.293 143 2/10/2025
3.0.292 135 2/10/2025
3.0.291 618 2/9/2025
3.0.290 170 2/8/2025
3.0.289 144 2/8/2025
3.0.288 134 2/8/2025
3.0.287 154 2/8/2025
3.0.286 507 2/8/2025
3.0.285 180 2/7/2025
3.0.284 213 2/7/2025
3.0.283 380 2/7/2025
3.0.282 124 2/7/2025
3.0.281 148 2/7/2025
3.0.280 134 2/7/2025
3.0.279 210 2/7/2025
3.0.278 137 2/7/2025
3.0.277 151 2/7/2025
3.0.276 600 2/6/2025
3.0.275 394 2/5/2025
3.0.274 233 2/5/2025
3.0.273 143 2/5/2025
3.0.272 176 2/5/2025
3.0.271 394 2/5/2025
3.0.270 154 2/5/2025
3.0.269 126 2/5/2025
3.0.268 801 1/28/2025
3.0.267 158 1/28/2025
3.0.266 145 1/28/2025
3.0.265 596 1/27/2025
3.0.264 173 1/27/2025
3.0.263 129 1/27/2025
3.0.262 133 1/27/2025
3.0.261 241 1/27/2025
3.0.260 163 1/27/2025
3.0.259 457 1/26/2025
3.0.258 159 1/26/2025
3.0.257 166 1/26/2025
3.0.256 119 1/26/2025
3.0.255 282 1/25/2025
3.0.254 345 1/25/2025
3.0.253 128 1/25/2025
3.0.252 144 1/25/2025
3.0.251 134 1/25/2025
3.0.250 319 1/25/2025
3.0.249 683 1/24/2025
3.0.248 214 1/24/2025
3.0.247 351 1/24/2025
3.0.246 276 1/24/2025
3.0.245 438 1/24/2025
3.0.244 335 1/23/2025
3.0.243 442 1/21/2025
3.0.242 148 1/21/2025
3.0.241 282 1/21/2025
3.0.240 154 1/21/2025
3.0.239 155 1/21/2025
3.0.238 474 1/21/2025
3.0.237 131 1/21/2025
3.0.236 128 1/21/2025
3.0.235 132 1/21/2025
3.0.234 136 1/21/2025
3.0.233 118 1/20/2025
3.0.232 147 1/20/2025
3.0.231 1,008 1/20/2025
3.0.230 126 1/20/2025
3.0.229 132 1/20/2025
3.0.228 385 1/20/2025
3.0.227 3,428 1/14/2025
3.0.226 114 1/14/2025
3.0.225 122 1/14/2025
3.0.224 268 1/14/2025
3.0.223 358 1/13/2025
3.0.222 329 1/13/2025
3.0.221 223 1/13/2025
3.0.220 130 1/13/2025
3.0.219 133 1/13/2025
3.0.218 407 1/12/2025
3.0.217 279 1/11/2025
3.0.216 227 1/11/2025
3.0.215 247 1/11/2025
3.0.214 148 1/11/2025
3.0.213 218 1/10/2025
3.0.212 145 1/10/2025
3.0.211 129 1/10/2025
3.0.210 151 1/10/2025
3.0.209 432 1/10/2025
3.0.208 156 1/10/2025
3.0.207 159 1/10/2025
3.0.206 888 1/3/2025
3.0.205 174 1/3/2025
3.0.204 245 1/3/2025
3.0.203 185 1/3/2025
3.0.202 327 1/2/2025
3.0.201 146 1/2/2025
3.0.200 146 1/2/2025
3.0.199 288 1/2/2025
3.0.198 148 1/2/2025
3.0.197 142 1/2/2025
3.0.196 660 1/1/2025
3.0.195 293 1/1/2025
3.0.194 159 1/1/2025
3.0.193 183 1/1/2025
3.0.192 335 1/1/2025
3.0.191 149 1/1/2025
3.0.190 153 1/1/2025
3.0.189 165 12/31/2024
3.0.188 144 12/31/2024
3.0.187 136 12/31/2024
3.0.186 155 12/31/2024
3.0.185 165 12/31/2024
3.0.184 240 12/31/2024
3.0.183 159 12/31/2024
3.0.182 679 12/31/2024
3.0.181 153 12/31/2024
3.0.180 425 12/31/2024
3.0.179 259 12/31/2024
3.0.178 142 12/31/2024
3.0.177 160 12/31/2024
3.0.176 145 12/31/2024
3.0.175 136 12/31/2024
3.0.174 173 12/30/2024
3.0.173 611 12/28/2024
3.0.172 171 12/28/2024
3.0.171 256 12/27/2024
3.0.170 136 12/27/2024
3.0.169 741 12/24/2024
3.0.168 331 12/24/2024
3.0.167 199 12/24/2024
3.0.166 134 12/24/2024
3.0.165 263 12/24/2024
3.0.164 116 12/24/2024
3.0.163 305 12/24/2024
3.0.162 112 12/24/2024
3.0.161 206 12/24/2024
3.0.160 155 12/23/2024
3.0.159 234 12/23/2024
3.0.158 287 12/23/2024
3.0.157 147 12/23/2024
3.0.156 459 12/23/2024
3.0.155 162 12/23/2024
3.0.154 441 12/22/2024
3.0.153 127 12/22/2024
3.0.152 149 12/22/2024
3.0.151 333 12/22/2024
3.0.150 143 12/22/2024
3.0.149 150 12/22/2024
3.0.148 148 12/22/2024
3.0.147 459 12/22/2024
3.0.146 130 12/22/2024
3.0.145 155 12/22/2024
3.0.144 164 12/22/2024
3.0.143 448 12/21/2024
3.0.142 146 12/21/2024
3.0.141 150 12/21/2024
3.0.140 146 12/21/2024
3.0.139 147 12/21/2024
3.0.138 150 12/21/2024
3.0.137 129 12/21/2024
3.0.136 151 12/21/2024
3.0.135 466 12/21/2024
3.0.134 286 12/21/2024
3.0.133 140 12/21/2024
3.0.132 145 12/21/2024
3.0.131 148 12/21/2024
3.0.130 393 12/21/2024
3.0.129 160 12/21/2024
3.0.128 216 12/20/2024
3.0.127 142 12/20/2024
3.0.126 284 12/20/2024
3.0.125 151 12/20/2024
3.0.124 313 12/20/2024
3.0.123 291 12/20/2024
3.0.122 165 12/20/2024
3.0.121 279 12/20/2024
3.0.120 320 12/19/2024
3.0.119 286 12/19/2024
3.0.118 143 12/19/2024
3.0.117 240 12/19/2024
3.0.116 135 12/18/2024
3.0.115 232 12/18/2024
3.0.114 324 12/17/2024
3.0.113 182 12/17/2024
3.0.112 131 12/17/2024
3.0.111 360 12/16/2024
3.0.110 465 12/10/2024
3.0.109 179 12/10/2024
3.0.108 273 12/10/2024
3.0.107 142 12/9/2024
3.0.106 275 12/9/2024
3.0.105 365 12/9/2024
3.0.104 144 12/9/2024
3.0.103 505 12/7/2024
3.0.102 191 12/6/2024
3.0.101 174 12/6/2024
3.0.100 175 12/6/2024
3.0.99 185 12/6/2024
3.0.97 222 12/6/2024
3.0.96 191 12/6/2024
3.0.95 155 12/6/2024
3.0.94 151 12/6/2024
3.0.93 149 12/6/2024
3.0.92 144 12/6/2024
3.0.91 203 12/6/2024
3.0.90 169 12/5/2024
3.0.89 207 12/5/2024
3.0.88 1,129 12/5/2024
3.0.87 228 12/5/2024
3.0.86 210 12/5/2024
3.0.85 303 12/5/2024
3.0.84 194 12/4/2024
3.0.83 238 12/4/2024
3.0.82 310 12/4/2024
3.0.81 314 12/4/2024
3.0.80 252 12/4/2024
3.0.79 151 12/3/2024
3.0.78 327 12/3/2024
3.0.77 308 12/3/2024
3.0.76 258 12/3/2024
3.0.75 137 12/3/2024
3.0.74 233 12/3/2024
3.0.73 144 12/3/2024
3.0.72 606 12/2/2024
3.0.71 245 12/2/2024
3.0.70 247 12/2/2024
3.0.69 152 12/2/2024
3.0.68 275 12/2/2024
3.0.67 377 12/1/2024
3.0.66 163 12/1/2024
3.0.65 430 12/1/2024
3.0.64 206 12/1/2024
3.0.63 340 11/29/2024
3.0.62 296 11/29/2024
3.0.61 445 11/21/2024
3.0.60 173 11/21/2024
3.0.59 415 11/20/2024
3.0.58 131 11/20/2024
3.0.57 184 11/20/2024
3.0.56 156 11/20/2024
3.0.55 144 11/20/2024
3.0.54 182 11/20/2024
3.0.53 159 11/19/2024
3.0.52 133 11/19/2024
3.0.51 140 11/19/2024
3.0.50 572 11/19/2024
3.0.49 136 11/19/2024
3.0.48 502 11/19/2024
3.0.47 128 11/19/2024
3.0.46 136 11/19/2024
3.0.45 511 11/15/2024
3.0.44 218 11/14/2024
3.0.43 168 11/14/2024
3.0.42 148 11/14/2024
3.0.41 238 11/14/2024
3.0.40 154 11/14/2024
3.0.39 368 11/14/2024
3.0.38 517 11/14/2024
3.0.37 265 11/14/2024
3.0.36 151 11/14/2024
3.0.35 131 11/14/2024
3.0.34 226 11/14/2024
3.0.33 157 11/14/2024
3.0.32 325 11/14/2024
2.1.31 478 11/13/2024
2.1.30 295 11/13/2024
2.1.29 407 11/13/2024
2.1.28 227 11/12/2024
2.1.27 127 11/12/2024
2.1.26 873 11/9/2024
2.1.25 289 11/9/2024
2.1.24 574 11/8/2024
2.1.23 180 11/8/2024
2.1.22 143 11/8/2024
2.1.21 453 11/8/2024
2.1.20 356 11/8/2024
2.1.19 446 11/6/2024
2.1.18 523 11/1/2024
2.1.17 147 11/1/2024
2.1.16 547 11/1/2024
2.1.14 149 10/29/2024
2.1.13 396 10/29/2024
2.1.12 217 10/29/2024
2.1.11 673 10/29/2024
2.1.10 402 10/28/2024
2.1.9 129 10/28/2024
2.1.8 197 10/28/2024
2.1.7 479 10/26/2024
2.1.6 199 10/26/2024
2.1.5 419 10/22/2024
2.1.4 165 10/22/2024
2.1.3 154 10/22/2024
2.1.2 165 10/22/2024
2.1.1 203 10/22/2024