Charakterystyka wydajności
Wywołanie implementacji pliku złożonego COM interfejsu IPropertySetStorage w celu utworzenia zestawu właściwości powoduje utworzenie strumienia lub magazynu za pośrednictwem wywołania funkcji IStorage::CreateStream lub IStorage::CreateStorage::CreateStorage. Domyślny zestaw właściwości jest tworzony w pamięci, ale nie jest opróżniany na dysk. Wywołanie metody IPropertyStorage::WriteMultiple, działa w buforze.
Po otwarciu zestawu właściwości jest używany IStorage::OpenStream lub IStorage::OpenStorage. Cały strumień zestawu właściwości jest odczytywany do ciągłej pamięci. operacje IPropertyStorage::ReadMultiple następnie działają, odczytując bufor pamięci. W związku z tym pierwszy dostęp jest kosztowny pod względem czasu (ze względu na odczyty dysku), ale kolejne dostępy są bardzo wydajne. Zapisy mogą być nieco droższe, ponieważ operacje SetSize na bazowym strumieniu mogą być wymagane do zagwarantowania, że miejsce na dysku jest dostępne, jeśli zostaną dodane dane.
Nie ma gwarancji, czy IPropertyStorage::WriteMultiple opróżni aktualizacje. Ogólnie rzecz biorąc, klient powinien założyć, że IPropertyStorage::WriteMultiple tylko aktualizuje bufor w pamięci. Aby opróżnić dane, należy wywołać IPropertyStorage::Commit lub IUnknown::Release (ostatnia wersja).
Ten projekt oznacza, że WriteMultiple może zakończyć się powodzeniem, ale dane nie są rzeczywiście trwale zapisywane.
Nuta
Ten rozmiar strumienia zestawu właściwości nie może przekraczać 256 000 bajtów.