Un thread puede presentar cuatro estados distintos:
Para entender prácticamente la vida de estos threads dejamos este curso de java presencial y 100% práctico.
Ejecución de un nuevo thread
El primer paso de un ciclo de vida de los threads es la creación de un nuevo thread no implica necesariamente que se empiece a ejecutar algo. Hace falta iniciarlo con el método
start(), ya que de otro modo, cuando se intenta ejecutar cualquier método del thread -distinto del método start()- se obtiene en
tiempo de ejecución el error IllegalThreadStateException. El método start() se encarga de llamar al método run() de la clase
Thread. Si el nuevo thread se ha creado heredando de la clase Thread la nueva clase deberá redefinirir el método run() heredado.
En el caso de utilizar una clase que implemente la interface Runnable, el método run() de la clase Thread se ocupa de llamar al
método run() de la nueva. Una vez que el método start() ha sido llamado, se puede decir ya que el thread está “corriendo”
(running), lo cual no quiere decir que se esté ejecutando en todo momento, pues ese thread tiene que compartir el tiempo de la
CPU con los demás threads que también estén running. Por eso más bien se dice que dicha thread es runnable.
Detener un Thread temporalmente: Runnable - Not Runnable
El sistema operativo se ocupa de asignar tiempos de CPU a los distintos threads que se estén ejecutando simultáneamente. Aun en
el caso de disponer de un ordenador con más de un procesador (2 ó más CPUs), el número de threads simultáneos suele siempre
superar el número de CPUs, por lo que se debe repartir el tiempo de forma que parezca que todos los procesos corren a la vez
(quizás más lentamente), aun cuando sólo unos pocos pueden estar ejecutándose en un instante de tiempo.
Para conocer aun mas de la tecnología java dejamos este
curso de java donde podrás aprender paso a paso.
Diseño de paginas Web Grupo Codesi