2011-02-01 20 views
26

Ambas líneas funcionan igual. pero hay alguna diferencia oculta? y cuál debería ser el preferido?Thread and ThreadStart

Thread t1 = new Thread(aMethod); 

Thread t2 = new Thread(new ThreadStart(aMethod)); 

Thanks.

+2

Especificar una etiqueta de idioma puede llamar más la atención de esta pregunta. DO#? –

+0

que idioma? – Daniel

+0

puntos señalados. Gracias. DO#. – Azodious

Respuesta

15

No hay diferencia. Ambas líneas son iguales.

+0

Sé que no hay diferencia (lo probé) pero sería deseable apoyarlo con cualquier enlace adicional a documentación, referencias ... – broadband

3

Son exactamente lo mismo, pero el segundo le permite utilizar un parámetro adicional en el método de inicio del subproceso (bien utilizando ParametrizedThreadStart en lugar de ThreadStart).

6

El compilador de C# transformará la declaración Thread t1 = new Thread(aMethod); a Thread t2 = new Thread(new ThreadStart(aMethod));

0

Un ThreadStart representa el método que se ejecuta en un hilo, así que esto es exactamente lo mismo.