PriorityQueue - Rust #002 - Équité

Dans ce deuxième épisode, on améliore notre Priority Queue pour y ajouter une notion d'équité entre producteurs.

On introduit les entités, un mécanisme inspiré du fair scheduling, afin qu'aucune source ne puisse monopoliser la file.

Ce que vous allez apprendre

Technologies : Rust, Cargo, HashMap, VecDeque, HashSet. Niveau : intermédiaire à avancé.

Cette étape prépare la suite de la série : on passera à la concurrence, avec une version multithread puis asynchrone sous Tokio.

Code source : github.com/xigh/pq-async-rs

PriorityQueue en Rust -- série vidéo

  1. PriorityQueue - Rust #001
  2. PriorityQueue - Rust #002 - Équité
  3. PriorityQueue - Rust #003 - Multithreading
  4. PriorityQueue - Rust #004 - Blocking Dequeue
  5. PriorityQueue - Rust #005 - Graceful Shutdown
  6. PriorityQueue - Rust #006 - async/await