>c:\progs\perl580\bin\perl test.pl SIZE : 268 >c:\progs\perl588\bin\perl test.pl SIZE : 268 >c:\progs\perl5100\bin\perl test.pl SIZE : 312
4.4 bytes per element.
Or I loop 100 times:
>c:\progs\perl580\bin\perl test.pl SIZE : 2156 >c:\progs\perl588\bin\perl test.pl SIZE : 2156 >c:\progs\perl5100\bin\perl test.pl SIZE : 2200
Still only 44 extra bytes. So they're tied to the array, not the elements. Adding Devel::Peek to the mix:
>c:\progs\perl588\bin\perl test.pl SIZE : 2156 SV = RV(0x185d34c) at 0x1820714 REFCNT = 1 FLAGS = (TEMP,ROK) RV = 0x236da4 SV = PVAV(0x23bfcc) at 0x236da4 REFCNT = 2 FLAGS = (PADBUSY,PADMY) IV = 0 NV = 0 ARRAY = 0x18799ac FILL = 99 MAX = 123 ARYLEN = 0x0 FLAGS = (REAL) >c:\progs\perl5100\bin\perl test.pl SIZE : 2200 SV = RV(0x1950668) at 0x195065c REFCNT = 1 FLAGS = (TEMP,ROK) RV = 0x1829944 SV = PVAV(0x23a120) at 0x1829944 REFCNT = 2 FLAGS = (PADMY,RMG) MAGIC = 0x1823f0c MG_VIRTUAL = &PL_vtbl_arylen_p MG_TYPE = PERL_MAGIC_arylen_p(@) MG_FLAGS = 0x02 REFCOUNTED ARRAY = 0x183502c FILL = 99 MAX = 123 ARYLEN = 0x0 FLAGS = (REAL)
I wonder why the array comes with magic attached!
Update: Added Devel::Peek dump.
In reply to Re: perl5.10 Devel::Size behaviour changed?
by ikegami
in thread perl5.10 Devel::Size behaviour changed?
by sang1986
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |