¿Cuál es la diferencia entre un fondo y un hilo de primer plano?En CLR, ¿cuál es la diferencia entre un fondo y un hilo de primer plano?
Respuesta
De MSDN:
hilos de fondo son idénticos a hilos de primer plano con una excepción: un subproceso de fondo no mantiene el entorno de ejecución administrado que ejecuta.
Ver this page:
hilos de primer plano tienen la capacidad de evitar la aplicación actual de la terminación. El CLR no cerrará una aplicación (es decir, descargará el AppDomain de alojamiento) hasta que todos los hilos de primer plano hayan finalizado.
Los subprocesos de fondo (a veces denominados subprocesos de daemon) son vistos por el CLR como rutas de ejecución prescindibles que pueden ignorarse en cualquier momento (incluso si están trabajando en alguna unidad de trabajo). Por lo tanto, si todos los subprocesos de primer plano han terminado, todos los subprocesos de fondo se eliminan automáticamente cuando se descarga el dominio de la aplicación.
cuando las personas deberían usar hilo de fondo ..... da un buen ejemplo. – Mou
Por defecto, los hilos son hilos de primer plano, lo que significa que mantienen la solicitud vida durante tanto tiempo como cualquier uno de ellos está en funcionamiento. C# también admite subprocesos de fondo, que no mantienen viva la aplicación por sí solos, finalizando inmediatamente una vez que todos los subprocesos de primer plano hayan terminado.
Si termina cualquiera de los hilos de primer plano o de fondo, la aplicación muere inmediatamente. Es posible cambiar el hilo de primer plano a fondo y viceversa en cualquier momento durante la vida útil de la aplicación. CLR crea dos tipos de subprocesos para admitir mejor AppDomain. CLR terminará por la fuerza cualquier subproceso de fondo que se esté ejecutando si el subproceso en primer plano finaliza. Cualquier subproceso creado por código nativo que ingrese al entorno de ejecución administrado se marca como subprocesos de fondo.
- 1. ¿Cuál es la diferencia entre un fondo y un servicio en primer plano?
- 2. ¿Cuál es la diferencia entre un hilo de trabajo CLR y un hilo de trabajo?
- 3. ¿Cuál es la diferencia entre un hilo y una fibra?
- 4. Cuál es la diferencia entre un subproceso y un controlador
- 5. ¿Qué son los hilos de fondo, primer plano y principales?
- 6. Cuál es la diferencia entre src y fondo de ImageView
- 7. ¿Cuál es la diferencia entre el tenedor y el hilo?
- 8. ¿Cuál es la diferencia entre el mango y el hilo?
- 9. hilos primer plano vs subprocesos de fondo
- 10. Diferencia entre CLR 2.0 y CLR 4.0
- 11. ¿Cuál es la diferencia entre un ayudante y un parcial?
- 12. ¿Cuál es la diferencia entre un JavaBean y un POJO?
- 13. ¿Cuál es la diferencia entre un vector y un vértice?
- 14. ¿Cuál es la diferencia entre un controlador y un servicio?
- 15. ¿Cuál es la diferencia entre un árbol y un directorio?
- 16. ¿Cuál es la diferencia entre un predicado y un funcionador?
- 17. ¿Cuál es la diferencia entre un método y un selector?
- 18. ¿Cuál es la diferencia entre un IORef y un MVar?
- 19. ¿Cuál es la diferencia entre un algoritmo y un método
- 20. ¿Cuál es la diferencia entre un "nonce" y un "GUID"?
- 21. ¿Cuál es la diferencia entre un lenguaje y un marco?
- 22. ¿Cuál es la diferencia entre un nanokernel y un exokernel?
- 23. ¿Cuál es la diferencia entre un HashMap y un TreeMap?
- 24. ¿Cuál es la diferencia entre un REPL y un intérprete?
- 25. ¿Cuál es la diferencia entre @ y @@ en un módulo?
- 26. ¿Cuál es la diferencia entre. y # en un archivo css?
- 27. ¿Cómo devolver un proceso de fondo huérfano a primer plano?
- 28. ¿Diferencia entre una "coroutine" y un "hilo"?
- 29. ¿Cuál es la diferencia entre Tarea e hilo?
- 30. ¿Cuál es la diferencia entre nohup y un daemon?
Aclaración: C# no tiene ningún concepto de fondo y de temas en primer plano. Las distinciones que hacen ciertos escenarios sobre un hilo se realizan a nivel CLR/COM. – JaredPar
C# tampoco tiene el concepto de Jirafa, pero puedes hacer una clase con una propiedad llamada Jirafa. IsBackground es una propiedad de un objeto en el marco. Recuerde, C# _el idioma_ no es el framework .NET. Es solo un lenguaje de programación. –