Desde la publicación StackOverflow (se recomendó mover esto):
Entonces, estoy trabajando en un motor de juego y he progresado bastante bien. Sin embargo, mi motor es de un solo subproceso, y las ventajas de dividir la actualización y el procesamiento en subprocesos separados parecen una muy buena idea.
¿Cómo debería hacer esto? Los motores de juego de un solo subproceso son (conceptualmente) muy fáciles de hacer, tiene un bucle donde actualiza -> render -> sleep -> repetir. Sin embargo, no puedo pensar en una buena manera de separar la actualización y el procesamiento, especialmente si cambio sus velocidades de actualización (digamos que paso por el ciclo de actualización 25 veces por segundo y tengo 60 fps para el procesamiento), ¿qué pasa si empiezo a actualizar a la mitad? a través de un bucle de renderizado, o viceversa?