J'écris une application Java qui, entre autres choses, doit lire un fichier texte dictionnaire (chaque ligne est un mot) et le stocker dans un HashSet. Chaque fois que je lance l'application, ce même fichier est en cours de lecture (fichier Unicode de 6 mégaoctets). Cela a semblé cher, donc j'ai décidé de sérialiser HashSet résultant et de le stocker dans un fichier binaire. Je m'attendais à ce que mon application s'exécute plus rapidement après cela. Au lieu de cela, il est devenu plus lent: de ~ 2,5 secondes avant ~ 5 secondes après la sérialisation.Vitesse de désérialisation de Java
Ce résultat est-il attendu? Je pensais que dans des cas similaires, la sérialisation devrait augmenter la vitesse.
Quelle est la taille du fichier résultant après la sérialisation? Cela peut également donner un indice sur la vitesse. – BalusC
A peu près la même chose. le fichier texte est 6.536.068 et le binaire sérialisé est 6.879.332 – celicni
2 1/2 secondes ne sont pas tout un tas de temps, vous pourriez vouloir pré-traiter votre fichier pour éliminer les espaces, vous pouvez également essayer de le zipper et de benchmarking pour voir si cela augmente la vitesse. –