implementación de hilos de Java subyacente múltiples nativa --thread

Java multi-threading

  • Cuando fuimos a leer la clase java hilo, se dará cuenta de esta clase y la mayor parte de la biblioteca API de Java hay una clara diferencia en la totalidad de sus métodos principales son declarados nativo .
  • nativo en sí se refiere a un método nativo, pero debido a que el modelo de rosca java utiliza el sistema operativo modelo de hilos natal, donde el valor por defecto de rosca nativemanera se refiere a la generación de Native POSIX Thread Library .
  • Hay tres implementaciones del hilo: un hilo del núcleo se implementan (1: 1 implementado), implementados usando el hilo de usuario (1: N), más el uso de hebras de usuario procesos ligeros implementaciones híbridas (N: M implementados). El Java 1.3 del modelo de hilos inicio ampliamente utilizado sistema operativo nativo modelo de hilos para lograr, a saber 1: 1.
  • HOTPOT que no va a interferir con la programación de subprocesos, prioridades de los hilos se pueden configurar para proporcionar recomendaciones de programación del sistema operativo.
  • sistema Linux y los diferentes PID cada proceso o LWP está asociado. Por otra parte, todos los hilos de una aplicación multiproceso en uno solo y el mismo PID.
  • Debido a múltiples hilos tienen el mismo PID, se introduce el concepto de un grupo de hilos , mientras que el mismo proceso que conduce a todas las discusiones de un grupo de hilos de rosca y el grupo de PID, que es el primer grupo de proceso ligero la PID, se almacena en el proceso descrito en el TGID campo símbolo.
  • Hay hilos en sentido real, su aplicación es para simular el proceso, pertenece a los hilos a nivel de usuario, que se encuentra la biblioteca libpthread compartido. estructura de datos específica en la memoria, es un descriptor de proceso de puntero apunta a la estructura de datos thread_info, este es el descriptor hilo, el tamaño de la zona de almacenamiento para el marco de dos hoja (2 * 4K).

Q & A

  • P1: tenedor en un programa, diferente código de ubicación creado (), por lo que es multi-hilo de este programa?
  • A: Programa relaciones de comunicación multi-proceso equivocado, tenedor crear el mismo programa () para crear un programa, perteneciente al padre e hijo entre cada tenedor () (padre e hijo se puede permitir única manera su comunicación entre procesos hijo tubería , y FIFO se permite comunicarse con los no Sons).
  • P2: ¿Cuántas sistema operativo crea un proceso hasta, cuántos hilos para crear hasta un proceso?
  • R: el sistema operativo procesa una línea creada por el más tabla proc (bajo Linux /proc) relacionado con el tamaño y procel tamaño de la tabla depende de la anchura del autobús (como bus ancho determina el número de punteros), tal como un 4G.
  • P3: ¿Cómo puedo ver los hilos del núcleo?
  • UN:ps afx

Referencia Bowen:

la programación multi-hilo Resumen: https://blog.csdn.net/skyroben/article/details/72793409
"la comprensión en profundidad de la máquina virtual de Java JVM características y las mejores prácticas avanzadas" para
"la comprensión en profundidad del kernel de Linux"

Supongo que te gusta

Origin www.cnblogs.com/SsoZhNO-1/p/12543656.html
Recomendado
Clasificación