Capítulo 9. Rendimiento de los subprocesos y la sincronización
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
Desde sus primeros días, parte del atractivo de Java se ha debido a que es multihilo. Incluso en los días anteriores a que los sistemas multinúcleo y multi-CPU fueran la norma, la capacidad de escribir fácilmente programas con hilos en Java se ha considerado una de sus características distintivas.
En términos de rendimiento, el atractivo es obvio: si hay dos CPU disponibles, una aplicación podría hacer el doble de trabajo o la misma cantidad de trabajo el doble de rápido. Esto supone que la tarea puede dividirse en segmentos discretos, ya que Java no es un lenguaje autoparalelizante que resuelva las partes algorítmicas. Afortunadamente, la informática actual suele consistir en tareas discretas: un servidor que gestiona peticiones simultáneas de clientes discretos, un trabajo por lotes que realiza la misma operación sobre una serie de datos, algoritmos matemáticos que se dividen en partes constituyentes, etc.
Este capítulo explora cómo obtener el máximo rendimiento de las funciones de hilos y sincronización de Java.
Roscado y Hardware
Recuerda la discusión del Capítulo 1 sobre los sistemas multinúcleo y los sistemas hiperhilo. Los hilos a nivel de software nos permiten aprovechar los múltiples núcleos y los hiperhilos de una máquina.
Duplicar los núcleos de una máquina nos permite duplicar el rendimiento ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access