One of these days I needed a debounce on Swift to ensure some block of code would only be executed once in a period of time. Debounces are quite simple so I implemented a first draft of it.
Not long after that, I also needed a throttle to skip repetitive calls to a different block of code. Not too different from a debouce, but not quite the same.
Bouncing around in the interwebs (pun intended), searching for a simple implementation for throttle, all I could find was nonsense… and overcomplicated.
So I created an extension on
DispatchQueue (where it should be):
TA DAA 🎉