. .NET framework es una biblioteca de clases en tiempo de ejecución para C#, . .NET es un entorno multihilo. Un hilo es un único proceso de control secuencial dentro de un proceso. Un hilo es una entidad dentro de un proceso. Un proceso puede tener múltiples hilos, y un hilo debe tener un proceso padre.
Los hilos suelen tener tres estados básicos: lectura, bloqueo y operación. A partir de los tres estados básicos se derivan cinco operaciones básicas de hilos. Primero, derivar, los hilos se derivan dentro de un proceso. En segundo lugar, programar, seleccionar un hilo listo para entrar en el estado de operación. Tercero, bloquear, si un hilo necesita esperar a que ocurra un evento durante la ejecución, será bloqueado. Cuarto, desbloquear, si el evento comienza, el hilo se desbloquea y entra en la cola de preparación. Quinto, terminar, el hilo termina y se libera el contexto de registros y el contenido de la pila que ejecutó.
Un nuevo hilo es un objeto de hilo recién generado que aún no ha asignado recursos. Por lo tanto, solo puedes usar los métodos start() o close().
El estado de reactivación es cuando el hilo obtiene los recursos necesarios para el hilo después de que se ejecute el método start() y llama al método run() para ejecutarse.
El estado No Recuperable es un estado que entra cuando ocurren los siguientes eventos, se llama al método suspend(), se llama al método sleep(), el hilo utiliza wait() para esperar la variable de condición, y el hilo está esperando la E/S.
Muerto es cuando el método Run() regresa, o otro hilo llama al método stop(), y el hilo entra en estado muerto. A continuación, dos ejemplos sencillos de Thread.
Resumen: ¿Por qué usar Hilos (multihilo)? Esto es para evitar bloquear el hilo principal; si necesitas procesar una gran cantidad de datos o llamar a un método que consume mucho tiempo, necesitamos usar el multihilo Thread.
Ejemplo:
No usar multihilo: La interfaz no responde... Es porque no se utiliza multihilo
|