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
- Gérer l'équité entre producteurs (fair scheduling)
- Structurer les données avec HashMap, VecDeque et HashSet
- Comprendre le rôle des contraintes génériques (Eq, Hash, Clone)
- Découvrir les NLL (Non-Lexical Lifetimes) du compilateur Rust
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