top | item 44904742

Show HN: Rust macro utility for batching expensive async operations

28 points| hackermondev | 6 months ago |github.com

10 comments

order

bombela|6 months ago

Need to explain in the readme what it does, and what for.

Why would I need such an abstraction? What is the cost?

Why is that any better than calling the function with a single argument in the first place?

I assume here it is maintaining a vector of futures and and a sibling vector of input values. And when this vector reaches the window size or something like that, it calls the original function with must returns a vector of results, which are then used to resolve the futures.

hackermondev|6 months ago

Thanks for the feedback, I've updated the README!

luckystarr|6 months ago

The API is great. Will definitely try it out. I have a use case already. How difficult would it be to extend this to support timed flushes? Like, every 200ms or so, regardless the fill of the buffer?

44za12|6 months ago

Like a sempahore?

0x457|6 months ago

Semaphore limits concurrency, this one automatically groups (batches) input.