Red de conocimiento informático - Material del sitio web - ¿Cómo comprender en profundidad los subprocesos múltiples de Java?

¿Cómo comprender en profundidad los subprocesos múltiples de Java?

El hilo es la unidad más pequeña en la programación del sistema, porque consume menos recursos que un proceso. Por lo tanto, los hilos se utilizan para hacer cosas similares, comunicarse entre sí, etc.

Para hacer solo una cosa fija (por ejemplo: calcular 1 2 3... 9999999), su rendimiento no será mayor que la eficiencia general de usar un solo hilo. La razón es que ambos son To. Al realizar tantas operaciones, si se utilizan subprocesos múltiples, el sistema desperdiciará algunos recursos y tiempo en el proceso de programación de subprocesos, lo que reducirá el rendimiento.

Entonces, ¿los subprocesos múltiples no tienen ningún significado en la existencia? La respuesta es, por supuesto, no. El subproceso múltiple todavía tiene valor. Cuando escribimos flujos de entrada, flujos de salida, escribimos programas de red, etc., habrá situaciones de bloqueo si no usamos subprocesos múltiples cuando leemos datos de A, porque A no está listo. todo el programa está bloqueado y no se puede hacer nada más. Si utiliza subprocesos múltiples, no tiene que preocuparse por este problema. Otro ejemplo: en el juego, si el personaje A y el personaje B son procesados ​​por el mismo hilo, entonces es muy probable que solo el personaje A responda a la operación, y el personaje B siempre estará ocupado. Será aburrido jugar.

Por lo tanto, los subprocesos son útiles, pero no deben usarse casualmente. Si se usan indiscriminadamente, pueden causar un bajo rendimiento. En términos generales, creo que deben responder. cosas de varias personas, desde El diseño debe considerar hacer algunas cosas al mismo tiempo (en muchos casos, estas cosas pueden no estar relacionadas en absoluto, pero pueden estar algo relacionadas).

Cuando se utilizan subprocesos múltiples, si algunos subprocesos implican compartir recursos, comunicación mutua, etc., debe prestar atención a los problemas de seguridad de los subprocesos y ver si necesita usarlos de acuerdo con la situación.