Eficencia en Rendimiento

03/02/2005 - 15:24 por Anonimo | Informe spam
Hola a todos.

Una pregunta, a ver si alguien puede aclararme.

Qué es más eficiente en rendimiento:

string s;

s+= " .";
s+= " .";
s+= " .";

ó

System.Text.StringBuilder sb = new
System.Text.StringBuilder();
sb.Append("");
sb.Append("");
sb.Append("");
// string s = sb.ToString();


Dudas, que me vienen a la mente:

1. Eficiencia en creación de objetos:
string s;
es menos eficiente que
System.Text.StringBuilder sb = new
System.Text.StringBuilder();

2. Modificar objeto:
s+= " "; es más ineficiente que
sb.Append(""); ???

Sé que si son 1000 instrucciones, para sb sería más
eficiente, pero para 3 instrucciones por ejemplo se
notaría ?


En fin, muchas gracias.
 

Leer las respuestas

#1 Octavio Hernandez
03/02/2005 - 15:40 | Informe spam
Hola,

Normalmente la utilización de objetos StringBuilder lleva a un rendimiento
superior, entre otras cosas porque se evita la creación de objetos (sabes
que los strings son inmutables, y que s += s1; implica crear un nuevo objeto
cuya referencia se asigna a s).

En principio, mi opinión es que no es algo como para obsesionarse y dejar de
usar string; sólo hay que usar StringBuilder en caso de que realmente
necesites un rendimiento "estrella", y siempre en métodos o módulos
específicos.

Salu2,

Octavio

escribió en el mensaje
news:0dbc01c509fc$1e2cd3b0$

Hola a todos.

Una pregunta, a ver si alguien puede aclararme.

Qué es más eficiente en rendimiento:

string s;

s+= " .";
s+= " .";
s+= " .";

ó

System.Text.StringBuilder sb = new
System.Text.StringBuilder();
sb.Append("");
sb.Append("");
sb.Append("");
// string s = sb.ToString();


Dudas, que me vienen a la mente:

1. Eficiencia en creación de objetos:
string s;
es menos eficiente que
System.Text.StringBuilder sb = new
System.Text.StringBuilder();

2. Modificar objeto:
s+= " "; es más ineficiente que
sb.Append(""); ???

Sé que si son 1000 instrucciones, para sb sería más
eficiente, pero para 3 instrucciones por ejemplo se
notaría ?


En fin, muchas gracias.

Preguntas similares