Red de conocimiento informático - Material del sitio web - ¿Cuáles son las condiciones para el punto muerto en la programación multiproceso? ¿El punto muerto sólo ocurre en el hilo principal?

¿Cuáles son las condiciones para el punto muerto en la programación multiproceso? ¿El punto muerto sólo ocurre en el hilo principal?

Hay cuatro condiciones necesarias para que se produzca un punto muerto:

1. Condición de exclusión mutua: los recursos no están disponibles entre sí y cada hilo utiliza sus propios recursos.

2. Condiciones de solicitud y retención: un hilo que ha obtenido un recurso quiere solicitar un nuevo recurso.

3. Condición de no privación: los recursos asignados no se pueden privar por la fuerza en el hilo correspondiente.

4. Condiciones de espera del bucle: varios subprocesos en el sistema forman un bucle y cada subproceso del bucle está esperando los recursos ocupados por los subprocesos adyacentes.

Los puntos muertos no sólo ocurren en el hilo principal.