Estoy luchando por encontrar una solución para este problema. El caso de uso es el siguiente:
Digamos por ejemplo que la función es:
function retrieveResource(resourceId, callback) { extLib.getResource(resourceId, function (err, data) { callback(err, data); }; };Entonces, cuando varias "personas que llaman" están llamando a funciones de recuperación de recursos, a menudo tienen el mismo ID de recurso. Cuando esto suceda dentro de un intervalo de 1 segundo, solo quiero que se ejecute 1 llamada a extLib.getResource y el resto usará el mismo valor que la primera llamada a la función.
Usar el caché no funciona del todo aquí porque la función se llama aproximadamente al mismo tiempo, todos revisan el caché aproximadamente al mismo tiempo y el caché está vacío en ese punto.
Miré _.debounce, _.throttle y no son lo que estoy buscando ya que el debounce está ejecutando solo una función y el acelerador todavía está ejecutando todas las funciones.
¿Algunas ideas?