Bonjour,
J'aimerais savoir le poids en octet qu'utilise un objet dans mon code.
Merci
Version imprimable
Bonjour,
J'aimerais savoir le poids en octet qu'utilise un objet dans mon code.
Merci
ca peut se calculer, un integer c'est 4 octets, un string c'est 2 octets par caractère, une date 8 octets etc...
ajouté à celà une zone pour les variables classes qui est 4 octets sur les os 32bits et 8 octets sur les os 64bits (puis ajouter le contenu de l'objet selon les types etc...)
avec de la reflection tu dois pouvoir avoir un nombre précis avec un code générique qui fonctionne pour toutes les instances
sinon les profiler de mémoire y compris ceux codés en .net arrivent à le calculer de manière plus réel en demandant à la CLR
En fait je voulais savoir si après un retour de procédure stockée Oracle, un OracleRefCursor est plus léger qu'un DataSet.
je ne connais pas oracle, mais vu le nom je dirais qu'un curseur n'a rien à voir avec un dataset donc ca ne serait pas comparable
un dataset ca contient toutes les données
un curseur ca permet de lire ligne par ligne (par ailleurs sur sql server les curseurs sont fortement déconseillés)
il n’existe pas un outils qui dit, tel variable a tel poids, tel objet a tel poids, tel session a tel poids, etc... ?
bah j'ai essayé de m'en servir, mais à par des poucentages qui veulent rien dire, et des .dll partout je comprend pas comment ça marche....
http://www.microsoft.com/en-us/downl....aspx?id=13382
il est assez simple à utiliser
tu lui dis quel exe démarrer, tu clic ou il faut sur ton exe pour qu'il ait en ram un objet de chaque au moins
tu fais "get heap", puis tu peux voir les allocations par type ainsi que le nombre d'objet, tu peux donc faire une moyenne
genre ca te dit string 10Mo pour 5000 instances, donc cherches pour les types qui t'interressent