CArchive::SetStoreParams
Użyj SetStoreParams przy przechowywaniu dużej liczby CObject-pochodzących z obiektów w archiwum.
void SetStoreParams(
UINT nHashSize = 2053,
UINT nBlockSize = 128
);
Parametry
nHashSize
Mapuje rozmiar tabeli mieszania dla wskaźnika interfejsu.Powinna być liczba.nBlockSize
Określa Rozdrobnienie alokacji pamięci dla rozszerzenia parametrów.Należy o mocy 2, aby uzyskać najlepszą wydajność.
Uwagi
SetStoreParamsPozwala ustawić rozmiar tabeli mieszania i rozmiar bloku mapy używany do identyfikowania unikatowych obiektów podczas serializacji.
Nie można wywoływać SetStoreParams po obiekty są przechowywane lub po MapObject lub funkcji WriteObject jest wywoływana.
Przykład
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
}
}
Wymagania
Nagłówek: afx.h