라벨이 cursor인 게시물 표시

[Tips]Understanding Cursor - Recycling

이 문서는 ArcGIS 9.3. 버전을 기준으로 작성되었으며, .NET C#( 3.0) 샘플 코드 실행을 위해서는 다음의 어셈블리를 참조해야 한다. - ESRI.ArcGIS.ADF - ESRI.ArcGIS.Geodatabase - ESRI.ArcGIS.System (ESRI.ArcGIS.esriSystem) 이 문서는 Geodatabase API를 사용하는 개발자들에게 CheatSheet(커닝페이퍼?)을 제공할 목적으로 작성되었으며 주요 내용은 성능향상, 범하기 쉬운 실수 등을 제공한다. 예제 코드는 특정 상황에 대한 샘플 코드로서 패턴을 제공하고, 상황에 따라 오류를 비교하기 위해 임의의 오류를 포함하고 있으므로 이 코드를 재활용해서는 안된다. ② Understanding Cursor - Recycling Recycling은 Row(IRow, IFeature)가 Cursor(ICursor, IFeatureCursor)로부터 어떻게 생성될 것인지를 결정하는 속성으로 ITable.Search 와 ISelectionSet.Search를 포함하는 몇몇 Cursor 생성에 대한 Boolean 파라미터이다. 예)    ICursor myCursor = myTable.Search(null, false );    IFeatureCursor myCursor = myFeatureLayer.Search(null, true ); 만약 Recycling Cursor를 사용하면, Cursor로부터 리턴되는 Row의 수에 상관없이 오직 단일 Row에 대한 메모리만 할당한다. 이는 메모리 사용량과 실행시간의 측면에서는 성능 개선에 대한 이점을 제공하지만 특정 워크플로우에 대해서는 단점이 있다. Recycling Cursor가 유용할 경우는 특정 시점에 단일 Row만 참조하는 상황이다. 예를 들면, 지오메트리를 그리거나 현재 Row의 Object ID를 콘솔 윈도우에 표시하는 경우이다. Cursor에서 여러 개의 Row를 반환하여 동시에 비교하거나, ...