1 votos

Reiniciar una aplicación cuando ocupa demasiada memoria

Algunas aplicaciones comienzan con una pequeña huella de memoria, pero poco a poco crecen hasta ocupar demasiada RAM. ¿Hay alguna manera de detectar automáticamente cuando una aplicación alcanza un determinado umbral, y entonces matar y relanzar la aplicación?

Sé que puedo ver la huella de memoria en el Monitor de Actividad, pero no parece que se pueda usar AppleScript. También puedo ver la huella de memoria de una aplicación usando ps aux pero sus números no parecen coincidir con los del Monitor de Actividad.

Agradecería cualquier ayuda con esto

1voto

Bob Puntos 11

Puedes probar cleanMyMac. Te mostrará la ram disponible y te permitirá limpiarla. También puedes crear una tarea cron que ejecute sudo purge para intentar solucionar algunos de estos problemas. (aunque sé que esa solución no está exenta de detractores y escépticos)

En mi opinión, el propio Applescript es un gran consumidor de memoria.

He estado tratando de OCR un gran número de documentos a través de un Applescript que llama Abbyy Fine Reader. Se ejecuta durante aproximadamente una hora y luego se bloquea el mac (justo antes de que obtenga un error diciendo que toda la memoria disponible de la aplicación se ha utilizado).

Al principio pensé que era un problema con Abbyy y el tamaño de los documentos. Pero resulta que el problema es en realidad applescript. Mi sistema tiene 16GB de memoria. Pero Applescript masticaría eso en menos de una hora con este volcado de documentos.

Incluso intenté hackear las cosas creando un cronjob que ejecuta sudo purge cada par de minutos. Eso ayudó. Pero en última instancia, no mucho. Lo único que liberó la situación de la memoria fue salir de Applescript.

Todo esto nos llevó a pasar a controlar las aplicaciones de Mac con ruby utilizando el ruby-gem rb-scpt. (Esa gema nos permite controlar cualquier aplicación applescript scriptable a través de ruby).

https://rubygems.org/gems/rb-scpt/versions/1.0.1

La solución de ruby script ha solucionado el problema de los repetidos cuelgues por falta de memoria disponible. He estado procesando estos documentos durante días (no horas) sin un solo problema. Mi memoria disponible no se ha movido desde que inicié el script. (ram monitorizado por CleanMyMac)

Applescript está bien para trabajos pequeños. Pero simplemente no está a la altura de un trabajo serio.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X