¿Cuál es la diferencia entre parameterizedThreadstart, Threadstart y Thread?diferencia entre parameterizedThreadstart, Threadstart y Thread
8
A
Respuesta
14
ThreadStart y ParameterizedThreadStart son tipos de delegados, que se define como esto:
public delegate void ThreadStart()
public delegate void ParameterizedThreadStart(object state)
ambos se utilizan para especificar la acción que va a tomar un nuevo hilo. Clearly ParamaterizedThreadStart toma un parámetro, mientras que ThreadStart no :) Esto solía ser una forma muy práctica de asignar a un nuevo hilo una tarea con un dato específico; ahora solo uso funciones anónimas que actúan como cierres.
La clase Thread
representa el hilo de la ejecución en sí: crea uno (con uno de los delegados anteriores), inícielo y luego déjelo funcionar.
Ver mi article on parameterized threading para más detalles - aunque desde aquí parece estar abajo en este momento :(
Cuestiones relacionadas
- 1. Thread and ThreadStart
- 2. Diferencia entre BackgroundWorker y Thread?
- 3. ¿Cuál es la diferencia entre thread-aware y thread-safe?
- 4. Diferencia real entre AsyncTask y Thread
- 5. ¿Cómo pasar los parámetros al método ThreadStart en Thread?
- 6. Diferencia entre la función Reentrada y Thread-Safe
- 7. Diferencia entre BeginInvoke y Thread.Start
- 8. ¿Por qué usar ThreadStart?
- 9. .NET ParameterizedThreadStart tipo de devolución incorrecta
- 10. Thread ID vs. Thread Handle
- 11. Thread sleep y thread join
- 12. Diferencia entre StreamReader.Read y StreamReader.ReadBlock
- 13. La diferencia entre Executors.newSingleThreadExecutor(). Execute (command) y new Thread (command) .start();
- 14. MySQL: diferencia entre ', `,' y"
- 15. Diferencia entre objeto y *?
- 16. Diferencia entre. y #
- 17. ¿Diferencia entre == y caso?
- 18. La diferencia entre $ * y $ @
- 19. Diferencia entre & y &
- 20. VBA: Diferencia entre y y +
- 21. ¿Por qué hay una diferencia al usar std :: thread :: hardware_concurrency() y boost :: thread :: hardware_concurrency()?
- 22. Diferencia entre "rosca libre" y "hilo seguro"
- 23. Diferencia entre -Wconversion entre gcc y g ++
- 24. Diferencia entre declarar-styleable y estilo
- 25. diferencia entre clang y Apple clang?
- 26. Diferencia entre subprocess.Popen y os.system
- 27. Diferencia entre decimal y decimal
- 28. ¿Diferencia entre trazo y relleno?
- 29. Diferencia entre interrupción y eventos
- 30. Diferencia entre netTcpContextBinding y netTcpBinding
Re "solía ser" - ParameterizedThreadStart se introdujo en .NET 2.0, junto con los métodos anónimos en C# 2.0 - así que no creo (para C# al menos) que alguna vez haya habido un momento en el que ParameterizedThreadStart fuera más útil. Me gusta comprobar el tipo, así que siempre uso ThreadStart con una captura. –
Podría decirse que esto fue más útil para VB (¿Estoy en lo cierto al pensar que VB no tenía/no tiene métodos anónimos? Mi conocimiento de VB es ... deficiente.) –
Esa es mi referencia de HILO para los hilos. Gracias por tomarse el tiempo de escribir eso y muy contento de conocerte. – Gishu