Stockage asynchrone et synchrone
les monikers asynchrones peuvent également retourner un objet Stockage asynchrone dans la notification IBindStatusCallback :: OnDataAvailable . Cet objet de stockage peut autoriser l’accès à certaines données persistantes de l’objet pendant que la liaison est toujours en cours. Un client peut choisir entre deux modes de stockage : blocage et non-blocage.
En mode blocage, qui est compatible avec les implémentations actuelles des objets de stockage, si les données ne sont pas disponibles, l’appel est bloqué jusqu’à l’arrivée des données. En mode non bloquant, au lieu de bloquer l’appel, l’objet de stockage retourne une nouvelle erreur E _ en attente lorsque les données ne sont pas disponibles. Un client connaissant la liaison et le stockage asynchrones note cette erreur et attend d’autres notifications (ondataavailable) pour retenter l’opération. Un client peut choisir entre un stockage synchrone (blocage) et un stockage asynchrone (sans blocage) en choisissant de définir l' _ indicateur BINDF ASYNCSTORAGE dans la valeur grfBINDF retournée à IBindStatusCallback :: GetBindInfo.