by Fenton Webb
If you are wondering what the parameters are used for…
public void Database.ResolveXrefs(bool useThreadEngine, bool doNewOnly)
…then here’s the documentation on the equivalent ObjectARX function found in the ObjectARX Reference guide…
Acad::ErrorStatus acdbResolveCurrentXRefs( AcDbDatabase* pHostDb, bool useThreadEngine = true, bool doNewOnly = false );
Input pointer to the AcDbDatabase to be used as the host
bool useThreadEngine = true
Input Boolean indicating whether to use the thread engine for xref resolution
bool doNewOnly = false
Input Boolean indicating whether to process only newly added xrefs
This function resolves existing xrefs in pHostDb.
If useThreadEngine is true, and other factors haven't disabled it, then the multi-thread engine is used for resolving the xrefs.
If doOnlyNew is true, only unresolved xref records are processed. Existing resolved xref AcDbLayerTableRecords, AcDbLinetypeTableRecords, and AcDbBlockTableRecords are ignored. In this case, the useThreadEngine argument also is ignored, and the multi-thread engine is not used.
If pHostDb points to an AcDbDatabase that is the primary database for a document in AutoCAD (in other words, a database that is loaded in the AutoCAD editor), doOnlyNew should be set to true to avoid reprocessing existing xrefs.
If pHostDb already contains resolved xrefs, then you must set the useThreadEngine argument to false. Otherwise, this function fails.
No document locking is done by this function. If pHostDb is associated with a document, the caller is responsible for locking that document.
This function is available to non-AutoCAD-based host applications.
Returns Acad::eOk if successful.