Je travaille avec un système qui utilise les GUID comme clés dans la plupart des tables de base de données. Les guids sont créés en utilisant UuidCreateSequential, afin d'être gentil avec les index de base de données.Sécurité des threads des appels U/uCreateSequential et p/invoke en général
C++ syntaxe, selon http://msdn.microsoft.com/en-us/library/aa379322(VS.85).aspx:
RPC_STATUS RPC_ENTRY UuidCreateSequential(
UUID __RPC_FAR *Uuid
);
p/invoke.net suggère la signature suivante:
[DllImport("rpcrt4.dll", SetLastError=true)]
static extern int UuidCreateSequential(out Guid guid);
La question est - comment puis-je savoir si cette méthode est sûr d'invoquer de plusieurs threads simultanément? Les tests initiaux montrent que cela peut être sûr, mais je n'ai trouvé aucune information significative à ce sujet sur MSDN ou Google. Existe-t-il une convention standard concernant les appels à l'API Windows sur laquelle je peux compter?