Estoy tratando de ejecutar un bucle de un par de miles de mapas en ArcGIS 10.1 pero el programa sigue estrellarse después de la impresión de alrededor de 100 mapas a la vez. He leído aquí que tengo que asegurarme de que mis resultados en la Gestión de los Resultados se ha guardado nunca, así que he cambiado la configuración en consecuencia. Mientras que esta medida permitió que el .mxd archivo de permanecer un tamaño constante, no resolver el problema de ArcGIS estrellarse después de la impresión ~100 mapas.
Además, mientras yo estoy en un único ArcGIS sesión, todos los resultados a obtener por escrito a la Sesión Actual en los Resultados. Parece que la razón de ArcGIS en última instancia, los accidentes es que demasiada memoria está ocupada después de los resultados de ~100 mapas se memorizan.
Sólo quiero ejecutar una sola ArcGIS período de sesiones (nunca el cierre de la .mxd archivo, mientras que el bucle se ejecuta) porque tengo miles de mapas para imprimir y no me gustaría para abrir y cerrar el mismo .mxd el archivo y ejecutar la misma secuencia de comandos de Python de 20 a 30 veces.
¿Hay alguna manera de borrar los resultados de la Sesión Actual, al final de cada iteración de mi bucle for? Tenía la esperanza de que esto impediría ArcGIS de estrellarse después de cada 100 mapas. Gracias!
En mi secuencia de comandos de Python, leí por primera vez en listas de parámetros para mi bucle de un archivo de texto. Entonces puedo ejecutar mi uno de los principales bucle for. En cada iteración, yo soy de ahorro de un buffer .shp y un polígono .shp en un espacio de trabajo: env.workspace = r"C:\ArcGIS\Mapping Files\All Shapefiles"
I, a continuación, zoom a la capa amortiguadora, exportar a pdf, y eliminar las dos nuevas capas así:
for lyr in arcpy.mapping.ListLayers(mxd, "Shape_" + object[i], df):
arcpy.mapping.RemoveLayer(df, lyr)
for lyr in arcpy.mapping.ListLayers(mxd, "Buffer_" + object[i], df):
arcpy.mapping.RemoveLayer(df, lyr)
del mxd, df, lyr