Caratteristiche di prestazioni

Una chiamata all'implementazione del file composto COM dell'interfaccia IPropertySetStorage per creare un set di proprietà fa sì che venga creato un flusso o un archivio tramite una chiamata a IStorage::CreateStream o IStorage::CreateStorage. Viene creato un set di proprietà predefinito in memoria, ma non scaricato su disco. Quando viene eseguita una chiamata a IPropertyStorage::WriteMultiple, viene eseguita all'interno del buffer.

Quando viene aperto un set di proprietà, viene usato IStorage::OpenStream o IStorage::OpenStorage . L'intero flusso del set di proprietà viene letto in memoria contigua. Le operazioni IPropertyStorage::ReadMultiple vengono quindi eseguite leggendo il buffer di memoria. Pertanto, il primo accesso è costoso in termini di tempo (a causa delle letture del disco), ma gli accessi successivi sono molto efficienti. Le scritture possono risultare leggermente più costose perché le operazioni SetSize nel flusso sottostante potrebbero essere necessarie per garantire che lo spazio su disco sia disponibile se vengono aggiunti dati.

Non vengono fornite garanzie per indicare se IPropertyStorage::WriteMultiple scarica gli aggiornamenti. In generale, il client deve presupporre che IPropertyStorage::WriteMultiple aggiorni solo il nel buffer di memoria. Per scaricare i dati, è necessario chiamare IPropertyStorage::Commit o IUnknown::Release (ultima versione).

Questa progettazione significa che WriteMultiple può avere esito positivo, ma i dati non vengono effettivamente scritti in modo permanente.

Nota

Questa dimensione del flusso del set di proprietà non può superare i 256.000 byte.