la nouvelle structure de l'objet en 1.9 embarque quelques Ivars en objets pour un accès plus rapide:Variables d'instance incorporées dans Ruby 1.9?
#define ROBJECT_EMBED_LEN_MAX 3
struct RObject {
struct RBasic basic;
union {
struct {
long numiv;
VALUE *ivptr;
struct st_table *iv_index_tbl;
} heap;
VALUE ary[ROBJECT_EMBED_LEN_MAX];
} as;
};
Ma question est sont les premiers 3 Ivars toujours noyé? ou sont-ils seulement intégrés si le nombre d'ivars est < = 3?
J'ai essayé de lire la source, mais je la trouve incompréhensible.
Merci
c'est ce que je soupçonnais mais j'avais besoin de confirmation! Merci beaucoup! – horseyguy