Banco de preguntas de la entrevista (5): programación concurrente

Uso de clases multiproceso.

  • ¿Cuáles son los métodos de sincronización de subprocesos de Java y sus respectivas ventajas y desventajas?
  • ¿Cuál es la diferencia entre sincronizado y ReentrantLock?¿Qué es un bloqueo reentrante?
  • ¿Para qué sirve threadlocal?
  • ¿Cuántas formas hay de crear subprocesos en Java? ¿Cuáles son las diferencias? Cuando finalice el subproceso principal, ¿seguirá ejecutándose el subproceso?
  • ¿Cuáles son las colecciones de uso común en JUC? (usado en el proyecto)
  • ¿Cómo se implementa CopyOnWriteArrayList? ¿Cuáles son los principales escenarios de aplicación? ¿Cuáles son las ventajas y desventajas?
  • HashMap no es seguro para subprocesos, ¿qué pasará al insertarlo en un entorno de alta concurrencia? ¿Por qué?
  • ¿Cómo logró ConcurrentHashMap la seguridad de subprocesos antes de jdk1.8? ¿Qué pasa después de jdk1.8? (1.8 sincronizado más CAS e introducido árbol rojo-negro)
  • Cuando se llama al método de tamaño de ConcurrentHashMap, los elementos se insertan al mismo tiempo ¿Cómo lo maneja ConcurrentHashMap?
  • Comparación de sincronizado y java.util.concurrent.locks.Lock. Principio AtomicInteger, ¿por qué usar CAS en lugar de sincronizado? ¿Qué problemas encontrará el backend del banco si varias personas quieren ganar mucho dinero en una cuenta?
  • ¿Qué es la operación CAS?

Supongo que te gusta

Origin blog.csdn.net/cq20110310/article/details/133187568
Recomendado
Clasificación