Los límites que existen y los que no
Qué se puede limitar de verdad en un proceso hijo por plataforma, qué parece limitable y no lo es, y qué hacer cuando el sistema no te da la herramienta.
Qué hay por plataforma
Dos conclusiones de la tabla. La primera: el tiempo lo controlas siempre, y es el límite más importante porque cubre el caso más frecuente —un proceso que no termina—. La segunda: lo demás es desigual, y montar contención seria por plataforma es mucho trabajo para una aplicación de escritorio.
La prioridad, que es el límite infravalorado
Lo más rentable de la tabla después del tiempo: bajar la prioridad del hijo.
No impide que consuma, y cambia por completo la percepción: un proceso a prioridad baja puede usar todo el procesador disponible sin que el usuario note lentitud, porque el sistema le da paso a lo que está en primer plano. Para una conversión en segundo plano es exactamente lo que quieres.
Cuesta una línea y es lo que separa una tarea de fondo que molesta de una que no. Y merece hacerlo también con las tareas pesadas de tu propio proceso —las del nivel 24— no solo con los hijos.
Vigilar en vez de limitar
Cuando el límite no existe, la alternativa práctica:
El paso 4 es el que más se incumple y el más fácil: procesar una selección de cien ficheros lanzando cien procesos es una forma segura de dejar la máquina inutilizable, y una cola de dos en dos suele terminar antes por menos competencia de disco.
Lo que no se puede contener
Y hay que aceptarlo: un proceso hijo puede hacer cualquier cosa que el usuario pueda hacer. Nivel 45.1. Ningún límite de memoria cambia eso.
Por lo tanto, la contención de recursos es una cuestión de buen comportamiento, no de seguridad. La seguridad frente a un proceso hijo es no lanzar programas en los que no confías, no limitarles la memoria.