mirror of
https://github.com/azaion/annotations.git
synced 2026-04-22 22:16:30 +00:00
19 lines
475 B
C#
19 lines
475 B
C#
namespace Azaion.Annotator.Extensions;
|
|
|
|
public static class ThrottleExt
|
|
{
|
|
private static bool _throttleOn;
|
|
public static async Task Throttle(Func<Task> func, TimeSpan? throttleTime = null)
|
|
{
|
|
if (_throttleOn)
|
|
return;
|
|
|
|
_throttleOn = true;
|
|
await func();
|
|
_ = Task.Run(async () =>
|
|
{
|
|
await Task.Delay(throttleTime ?? TimeSpan.FromMilliseconds(500));
|
|
_throttleOn = false;
|
|
});
|
|
}
|
|
} |