CArchive::SetStoreParams
Utilice SetStoreParams cuando almacene un gran número de CObject- objetos derivados en un archivo.
void SetStoreParams(
UINT nHashSize = 2053,
UINT nBlockSize = 128
);
Parámetros
nHashSize
El tamaño de la tabla hash de puntero de interfaz.debe ser un número primo.nBlockSize
Especifica la granularidad de asignación de memoria para extender los parámetros.Debe ser una potencia de 2 para obtener el máximo rendimiento.
Comentarios
SetStoreParams permite establecer el tamaño de la tabla hash y el tamaño de bloque de asignación se utiliza para identificar objetos únicos durante el proceso de serialización.
No debe llamar a SetStoreParams una vez almacenado cualquier objeto, o después de MapObject o de WriteObject se denomina.
Ejemplo
class CMyLargeDocument : public CDocument
{
public:
virtual void Serialize(CArchive& ar);
};
void CMyLargeDocument::Serialize(CArchive& ar)
{
if (ar.IsStoring())
ar.SetStoreParams(); // use large defaults
else
ar.SetLoadParams();
if (ar.IsStoring())
{
// code for storing CMyLargeDocument
}
else
{
// code for loading CMyLargeDocument
}
}
Requisitos
encabezado: afx.h