DeDupeConcurrentRequestStrategy

De-duplicates concurrent requests for the same key.

The first caller executes block. If it succeeds, all waiters are released so they can continue (for example, by reading from cache). If it fails or is canceled, one waiter is resumed to retry block.

Constructors

Link copied to clipboard
constructor()

Functions

Link copied to clipboard
open suspend override fun apply(key: String, block: suspend () -> FetchResult): FetchResult