This document is archived and information here might be outdated.  Recommended version.


ISpatialCacheManager2 Interface (ArcObjects .NET 10.7 SDK)
ArcObjects Help for .NET developers > ArcObjects Help for .NET developers > ArcObjects namespaces > Geodatabase > ESRI.ArcGIS.GeoDatabase > Interfaces > IS > ISpatialCacheManager2 Interface
ArcGIS Developer Help

ISpatialCacheManager2 Interface

Provides access to members that control the Spatial Cache Management. Note: the ISpatialCacheManager2 interface has been superseded by ISpatialCacheManager3. Please consider using the more recent version.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Members

Name Description
Read-only property CacheExpansionFactor The extent expansion factor for the spatial cache.
Read-only property CacheExtent The extent of the spatial cache.
Read-only property CacheIsFull Indicates if the spatial cache is full.
Method EmptyCache Empties the spatial cache.
Method FillCache Fills the spatial cache using the specified extent.
Method FillCacheEx Fills the spatial cache using the specified extent with an expansion factor.

Inherited Interfaces

Interfaces Description
ISpatialCacheManager Provides access to members that control the Spatial Cache Management.

Classes that implement ISpatialCacheManager2

Classes Description
VersionedWorkspace VersionedWorkspace Object.
Workspace Workspace Object.

Remarks

The ISpatialCacheManager2 interface was added to enable creating a spatial cache by expanding the specified envelope by a specified expansion factor.

Enabling feature caching improves the performance of all spatial searches whose query geometry lies within the cached area and and also improves the performance of all queries that retrieve features by object ID (for example, GetRow, GetFeature, GetRows, and GetFeatures). At ArcGIS release 8.3 and earlier, caching of features using ISpatialCacheManager requires that there be an active edit session. At ArcGIS release 9.0 and higher, using ISpatialCacheManager does not require an active edit session.

Use of the cache is transparent to editing applications. Objects retrieved using non-recycling cursors may be updated and stored by the editing application.  As in the uncached case, the geodatabase takes care of ensuring read and query consistency when queries are issued againt updated objects. The cache is exposed to end users as the edit cache in ArcMap for ArcGIS release 8.3 and earlier, and the map cache for ArcGIS releases 9.0 and higher. The cache improves performance significantly for network editing when working with ArcSDE geodatabases.

The SpatialCacheManager optimistically builds caches for features within the workspace. It caches the features in the cache extent for any open feature class. Note that opening a feature class that participates in a topology or geometric network will also open all other feature classes participating in the topology or geometric network. To correctly use the cache, you should be aware of which feature classes are open within a workspace.  If a reference to the workspace is returned from a map document, the open feature classes will include all the feature classes for that workspace in the map. If you have opened the workspace through the Geodatabase API, by using a method such as IFeatureWorkspace::OpenFeatureDataset, only those features from feature classes that have been explicitly opened using the IFeatureWorkspace::OpenFeatureClass method will be cached.