¿Cuándo sincronizo métodos o utilizo bloques sincronizados en mis métodos en un juego de Android?
Estoy buscando en escribir código de gráficos simples en Android y he notado algunos bloques synchronized ().
¿Cuál es el razonamiento detrás de esto y cómo sé cuando debo "sincronizar" mi código?
- Android Opengl-es carga un poder de 2 no-textura
- E / libEGL: error en el archivo de caché CRC check
- Animación esquelética en GPU para Android OpenGL ES
- ¿Cómo puedo utilizar varios componentes GLSurfaceView en el mismo Layout?
- OnSurfaceCreated () se llama cambios de orientación cada vez
- Creación de una pantalla apropiada de Splash / Loading de Android
- Java.lang.RuntimeException: eglSwapBuffers falló: informe EGL_SUCCESS
- IOS OpenGL ES compatible con Android OpenGL ES?
- Android GLSurfaceView con fondo dibujable
- ¿Cómo puedo declarar la versión de OpenGL en shaders en Android?
- Dibujar texto o imagen en el flujo de la cámara (GLSL)
- Problema de opengl de Android (extraño)
- Cómo utilizar OpenCL en Android?
synchronized
bloques de instrucciones synchronized
se usan comúnmente en la programación simultánea ( aplicaciones multiproceso ), donde su aplicación utiliza muchos subprocesos. Como ejemplo para un juego de Android, podría tener un hilo con procesamiento de cliente, otro para el servidor, uno para generar otros procesos, etc.
La palabra clave por sí misma asegura que los métodos se accedan a un hilo a la vez, lo que los convierte en hilos seguros. Si su aplicación compartía recursos sin utilizar sentencias synchronized
, corre el riesgo de que se produzca un bloqueo .
El bloqueo se traducirá en un bloqueo , es decir, el proceso se cuelga. El bloqueo debe evitarse a toda costa, especialmente tratando con el tamaño del procesador de un teléfono móvil.