Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

126
Views
MutableSharedFlow - diferencia entre reproducción y extraBufferCapacity

MutableSharedFlow toma 3 parámetros: reproducción, extraBufferCapacity y onBufferOverflow. ¿Cuál es la diferencia entre reproducción y extraBufferCapacity?

La documentación menciona lo siguiente:

reproducción: la cantidad de valores reproducidos a los nuevos suscriptores (no puede ser negativo, el valor predeterminado es cero).

extraBufferCapacity: el número de valores almacenados en búfer además de la reproducción. emit no se suspende mientras queda un espacio de búfer (opcional, no puede ser negativo, el valor predeterminado es cero).

No entiendo exactamente la diferencia entre los 2 y cuándo necesitaríamos extraBufferCapacity> 0. ¿ExtraBufferCapacity es solo una capacidad de reproducción adicional para los emisores?

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

¿ExtraBufferCapacity es solo una capacidad de reproducción adicional para los emisores?

La terminología de "repetición" solo tiene sentido para los suscriptores, no para los emisores. El parámetro replay define cuántos valores pasados recibirán los nuevos suscriptores al suscribirse. Obviamente, implica que esos valores deben almacenarse, por lo que el búfer general debe ser al menos así de grande.

Sin embargo, el tamaño del búfer en su conjunto afecta a los emisores. La consecuencia exacta de un búfer lleno depende de onBufferOverflow , pero este tamaño de búfer se puede usar para controlar la contrapresión en los emisores (ralentizándolos) o cómo soltamos mensajes. Con un búfer más grande, puede permitir que los emisores tengan ráfagas de emisiones sin ralentizarlos, como cualquier búfer regular.

Ahora, elegir tener un búfer más grande no debería obligarlo a reproducir esos valores almacenados en el búfer a los nuevos suscriptores, de ahí el extraBufferCapacity . Con extraBufferCapacity > 0 , puede definir un búfer de cualquier tamaño deseado sin obligarlo a reproducir tantos valores, simplemente usando la fórmula:

 bufferSize = replay + extraBufferCapacity

Por ejemplo, podría decidir no reproducir ningún valor para los nuevos suscriptores, pero aún así permitir ráfagas de emisores al tener algún búfer (no reproducido).

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!