es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo modificar el orden de los elementos en una lista de tareas antes de procesar los elementos mediante un hilo de trabajador de un controlador k8s.

Tengo una WorkQueue como se muestra a continuación, en la cual A, B y C son objetos de recurso de Kubernetes:
C-A-B

Quiero modificar este orden de los objetos de recurso en esa WorkQueue antes de pasar esos objetos para procesarlos por un hilo de trabajo, como
A-B-C

Quiero hacerlo de esta manera porque existe una dependencia entre el objeto de recurso A, B, C, de modo que después de obtener los objetos uno por uno mediante el método Get() de WorkQueue para su procesamiento, deben procesarse en un orden específico, ya que dependen entre sí (por ejemplo, el procesamiento de A depende del procesamiento de B).

Por favor, ayúdame a encontrar una solución para esto.

Gracias.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Estimado/a,

    Para modificar el orden de los recursos en la WorkQueue, necesitas agregarlos en el orden deseado. En este caso, quieres pasar los objetos A, B y C en el orden A-B-C. Una forma de lograr esto es utilizar el método AddRateLimited() de la WorkQueue en lugar del método Add().

    Aquí tienes un ejemplo de código:

    workqueue.AddRateLimited("A")
    workqueue.AddRateLimited("B")
    workqueue.AddRateLimited("C")
    

    Con este cambio, la WorkQueue procesará los recursos en el orden en que fueron agregados, que en este caso es A-B-C. Esto garantiza que el procesamiento de A dependa del procesamiento de B, como mencionaste.

    Espero que esta solución te sea útil. Si tienes alguna otra consulta, no dudes en preguntar.

    ¡Gracias!

Comments are closed.