Viac

Únik pamäte v súhrnných bodoch/vyrovnávacej pamäti/Addfielde/kurzori ArcGIS?


Existujú obavy, či ArcGIS 10 splní moju požiadavku.

ET Geowizards bol vyskúšaný, aj keď nemá rovnakú schopnosť ako ArcGIS, napr. Nemôžem agregovať všetky body, ktoré mám s ET, do takej miery, ako ich mám vykreslené.

Dochádza k úniku pamäte, čo znamená, že prechádzame 700 objektmi a vykonávame:

  1. Aggové body.
  2. Buffer.
  3. Pridať pole.
  4. Aktualizovať kurzor.

Začína to 5-9 s na jeden objekt a pokračuje 2 minúty na (podobne veľký) objekt.

V SP2 sa zdá, že AggPoints už nefunguje na vytvorenie FC za chodu. Je toho viac, ale zostaviť zoznam je príliš dlhý!

Kód zjednodušený bez vyrovnávacej pamäte, pridania poľa alebo kurzora. geom je zbierka alebo arcpy body

def createGeom (geom, scratchDB): filetime = (str (time.time ())). split (".") outfile = "fc" + filetime [0] + filetime [1] outpath = scratchDB + "tmpV.gdb /Polygon/"outFeatureAggClass = outpath +outfile +" _ Agg "arcpy.AggregatePoints_cartography (geom, outFeatureAggClass," 124000 metres ")

Zdá sa, že veľkosť geodatabázy súboru, do ktorej píšeme, je jedným z hlavných problémov; Myslím si, že problém je v tom, že výkon sa zhoršuje, pretože miestna geodatabáza súborov sa zapĺňa - výrazne.

Máte nápady, ako vyladiť geodatabázu miestnych súborov?


Ak ukážete najjednoduchšiu možnú formu kódu, mohlo by mu pomôcť použitie slovníka namiesto kurzora alebo pracovného priestoru v pamäti alebo zmena pracovného postupu (napríklad agregát & vyrovnávacia pamäť potom kurzor namiesto kurzora potom agregácia a vyrovnávacia pamäť [odkaz ]), alebo ... V každom prípade začnite tu: Výkonnosť ArcGISScriptingu a veľkých súborov priestorových dát


Pozri si video: TEST PAMĚTI. Otestujte si svojí krátkodobou paměť (Október 2021).