Bonjour,
Je développe actuellement une bibliothèque statique de lecture de fichiers binaires. Les fichiers sont vue comme une base de données rassemblant plusieurs fichiers (plusieurs centaine) de différentes tailles (de 2 à 50Mo), identifiés par leurs noms et chemins d'accès.
La bibliothèque se charge d'ouvrir, de lire une valeur, puis de fermer le fichier correspondant à la requête de l'utilisateur. L'utilisateur de la bibliothèque n'a donc pas à savoir où se trouve la donnée qu'il vient de lire. Le développement de la bibliothèque doit être pensé de tel sorte qu'elle puisse répondre rapidement à la requête de l'utilisateur.
Maintenant pour optimiser le mécanisme, j'ai pensé à utilisé un principe qu'on retrouve dans les bases de données. A savoir un pool de connexion. C'est à dire une sorte de tableau qui contiendrais les descripteurs de fichiers récemment ouvert. Ainsi pour lire une valeur dans un fichier la bibliothèque regarde si le descripteur du fichier ne se trouve pas déjà dans le pool. S'il y est alors elle l'utilise directement pour lire. Sinon elle ouvre le fichier et ajoute son descripteur dans le pool. Vu que la taille du pool est fixe donc les descripteurs les plus anciens devront être fermé (fclose).
Ça c'est pour le principe. Ma question est de connaitre vos avis, remarques et critiques...
Merci