Bonjour,
J'ai un programme qui doit rechercher des chaines de caractères dans un unique fichier. Ce programme lance un thread pour chaque chaine différente à rechercher dans mon unique fichier.
Jusqu'à présent, chaque thread ouvre le fichier et parcourt les lignes à la recherche de sa chaîne de caractère. Du coup, forcément, ce n'est pas très efficace. Il y a certainement plus rapide.
Donc, maintenant, je veux optimiser ces recherches. J'ai donc créé un singleton qui lit le fichier et le mets dans un buffer. Jusque là tout va bien. Maintenant, j'ai besoin que chaque thread puisse parcourir ce buffer de manière indépendante pour faire sa propre recherche. Et là, c'est le drame !
Si j'utilise les méthodes habituelles de parcours d'un buffer, le multithreading fait que tout le monde s'emmêle les pinceaux. Pas mieux avec les regex.
Existe t-il une classe permettant de parcourir un buffer sans que le pointeur de positionnement du buffer soit lié à la classe du buffer ?
Je voudrais aussi éviter de copier mon buffer dans chaque thread.
Merci pour votre aide.
Partager