Je suis en train d'implémenter un code de traitement d'image pour Android. Je suis conscient des limites de mémoire et je suis heureux de coder dans ces limites. Cependant, je ne trouve aucune documentation qui me permette de calculer le nombre d'octets utilisés pour chaque instance d'une classe donnée que je pourrais vouloir instancier (sur le tas).
Je suis un programmeur C++ expérimenté et je suis donc relativement compétent pour résoudre les problèmes de dimensionnement des structures/classes pour mon code C++ (en tenant compte de la largeur du chemin de données du processeur, des problèmes d'alignement de la plate-forme, etc.) Je sais que Java en général se situe à un niveau d'abstraction plus élevé et que je ne suis donc pas en mesure de garantir une utilisation particulière de la mémoire pour une VM Java générale. Cependant, étant donné qu'Android fonctionne sur une VM différente et que les développeurs sont soumis à de fortes contraintes de mémoire : Je suppose qu'il peut y avoir un ensemble de règles relativement déterministes pour déterminer la taille d'une instance d'objet donnée, compte tenu de la connaissance des membres.
Quelqu'un connaît-il ces règles ?
Merci !
Alex