J'ai vu des codes qui utilisent les fonctions APIs GlobalAllock et GlobalLock pour isoler et bloquer des zones dans la memoire avant de placer les données. Pourquoi est-il necessaire de faire ca ? L'explication sur MSDN est mediocre.
Quelqu'un peut me decrire un scenario ou il serait necessaire de bloquer la memoire pour reussir un code ?
ou il serait necessaire de bloquer la memoire pour reussir un code
Nécessaire n'est pas le bon adjectif. Souhaitable serait plus approprié.
Les fonctions dont tu parles permettent d'agiliser la gestion des tampons en mémoire.
Tu en trouveras l'exposé dans MSDN, mais également sur le site de ALL-API (avec, sur ce dernier site, 3 exemples d'utilisation).
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Ce n'est pas souhaitable non plus. Les fonctions Global/LocalAlloc sont utilisées pour la compatibilité avec les applications 16-bit. Ca entraine des pertes de perf. Il faut (sauf cas exceptionnel) appelé HeapAlloc (qui est de toute façon appelée par Global/LocalAlloc)
L'utilisation de Global/LocalLock est inutile également, HeapAlloc lock l'objet mémoire crée de toute manière.