2009年6月22日星期一

[PerlChina] Re: 求类似Class::Accessor的推荐模块

试验了一下 真的很快. 比手工写的accessor都要快很多。
去看看能不能从中学到些什么~~~
谢谢推荐

2009/6/22 Fayland Lam <fayland@gmail.com>
Class::XSAccessor should be the fastest one. :)

Don Qin wrote:
> 一直以为Moose很慢。 今天作了个benchmark 发现速度还是相当不错的 快于
> Class::Accessor 比Class::Accessor::Fast稍慢。
> 测试基于Class::Accessor中自带的那个example
>
> Rate Basic Moose Fast Faster Direct
> Basic 443645/s -- -52% -54% -58% -89%
> Moose 918220/s 107% -- -5% -13% -78%
> Fast 961643/s 117% 5% -- -9% -77%
> Faster 1051580/s 137% 15% 9% -- -75%
> Direct 4170019/s 840% 354% 334% 297% --
> mutators:
> Rate Moose Acc Fast Faster Direct
> Moose 228217/s -- -21% -73% -74% -95%
> Acc 289764/s 27% -- -65% -67% -93%
> Fast 829929/s 264% 186% -- -4% -81%
> Faster 867616/s 280% 199% 5% -- -80%
> Direct 4439916/s 1845% 1432% 435% 412% --
>
>
> 2009/6/20 agentzh <agentzh@gmail.com <mailto:agentzh@gmail.com>>
>
>     On 6/18/09, *xu zhou* <redicaps@gmail.com
>     <mailto:redicaps@gmail.com>> wrote:
>
>         Class::Accessor可以自动生成存取器,但在当前包里面不能设定属性
>         的默认值
>         求推荐一个有此功能的模块
>
>
>     出于性能考虑,我一般使用与之兼容的 Class::Accessor::Fast 模块。默
>     认值的设定我多是自己在构造函数里搞定,例如:
>
>     $ perl -e 'package Dog;use
>     base"Class::Accessor::Fast";Dog->mk_accessors("age");sub
>     new{bless{age=>25},shift}print Dog->new->age'
>     25
>
>         moose除外
>         太重量级还没准备好学它
>
>
>     嗯,Moose 功能强大,但也意味着更大的性能开销,呵呵
>
>     Cheers,
>     -agentzh
>
>
>
>
>
> >


--
Fayland Lam // http://www.fayland.org/
Foorum based on Catalyst // http://www.foorumbbs.com/





--~--~---------~--~----~------------~-------~--~----~
您收到此信息是由于您订阅了 Google 论坛"PerlChina Mongers 讨论组"论坛。
 要在此论坛发帖,请发电子邮件到 perlchina@googlegroups.com
 要退订此论坛,请发邮件至 perlchina+unsubscribe@googlegroups.com
 更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛

-~----------~----~----~----~------~----~------~--~---

没有评论: