Ce qui est plus rapide: clair de collection ou d'instancier de nouveaux

J'ai un certain nombre de génériques, listes dans mon code, qui ont des dizaines ou des centaines d'éléments.
Parfois j'ai besoin de remplir cette liste avec d'autres objets, donc, la question est: ce sera plus rapide, à l'appel Clear() méthode ou la création d'un new List<T>()?

  • OMI StackOverflow experts n'est pas exactement "des inconnus sur internet". Si quelqu'un a déjà étudié la question, il sera en mesure de répondre facilement. Mais vous avez un bon point que si vous voulez savoir pour sûr, vous devez calculer vous-même.
  • Jason, je crois, qu'il y a beaucoup de théorie, que je devrais savoir, pour n'importe quelle situation, non seulement pour mon cas.
  • Je ne vois pas en quoi ça change un peu ma réponse: mesurer vous-même.
  • Le problème est que la "théorie commune" dépend de beaucoup de facteurs, dont beaucoup dépendent de votre scénario d'utilisation. Sans en connaître beaucoup d'autres informations, il n'y a aucun moyen de dire qu'une version est meilleure que l'autre, comme ils l'ont différentes caractéristiques de performance - et chacun d'eux peut être mieux/plus rapide/utiliser moins de mémoire/etc dans des scénarios spécifiques.
  • +1 parce que cette question est en demandant des réponses qui permettent aux gens de faire des estimations sur les résultats escomptés, même avant l'essai.
  • S'il vous plaît dites-moi si je me trompe, mais si vous avez à "Effacer" les tableaux, très souvent, vous devez Effacer le tableau existant pas réaffecter les fonds. Je considère que la Collecte des Ordures un processus lent et je l'éviter dans ma critique pour les performances des applications.
  • Connexes: what-are-the-key-differences-between-dictionary-clear-and-new

InformationsquelleAutor Mrimsh | 2012-06-05