[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

[ANN] event_hook 1.0.0 Released

Ryan Davis

5/20/2009 7:02:00 AM


event_hook version 1.0.0 has been released!

* <http://rubyforge.org/projects/sea...

Wraps rb_add_event_hook so you can write fast ruby event hook
processors w/o the speed penalty that comes with set_trace_func (sooo
sloooow!). Calls back into ruby so you don't have to write C.

% ruby demo.rb
# of iterations = 1000000
user system total real
null_time 0.120000 0.000000 0.120000 ( 0.125279)
ruby time 0.560000 0.000000 0.560000 ( 0.562834)
event hook 3.160000 0.010000 3.170000 ( 3.175361)
set_trace_func 34.530000 0.100000 34.630000 ( 34.942785)

Changes:

### 1.0.0 / 2009-05-19

* 1 major enhancement

* Birthday!

* <http://rubyforge.org/projects/sea...


3 Answers

Roger Pack

5/20/2009 12:38:00 PM

0


> Wraps rb_add_event_hook so you can write fast ruby event hook
> processors w/o the speed penalty that comes with set_trace_func (sooo
> sloooow!). Calls back into ruby so you don't have to write C.

Wow thanks for doing this--anybody know why rb_add_event_hook is so much
faster then?

A drop in replacement for set_trace_func might be sweet, too :)

-=r
--
Posted via http://www.ruby-....

Kent Sibilev

5/20/2009 1:23:00 PM

0

On Wed, May 20, 2009 at 8:37 AM, Roger Pack <rogerpack2005@gmail.com> wrote:
>
>> Wraps rb_add_event_hook so you can write fast ruby event hook
>> processors w/o the speed penalty that comes with set_trace_func (sooo
>> sloooow!). Calls back into ruby so you don't have to write C.
>
> Wow thanks for doing this--anybody know why rb_add_event_hook is so much
> faster then?
>
> A drop in replacement for set_trace_func might be sweet, too :)
>

set_trace_func requires creating a new Binding object for each event
triggered. In Ruby 1.8.x this is very very slow operation. Ruby 1.9.x
reuses these Binding objects as much as possible, which makes this
operation much faster and lead to a way more acceptable speed of
debug.rb.

Ryan Davis

5/21/2009 1:03:00 AM

0


On May 20, 2009, at 05:37 , Roger Pack wrote:

>
>> Wraps rb_add_event_hook so you can write fast ruby event hook
>> processors w/o the speed penalty that comes with set_trace_func (sooo
>> sloooow!). Calls back into ruby so you don't have to write C.
>
> Wow thanks for doing this--anybody know why rb_add_event_hook is so
> much
> faster then?
>
> A drop in replacement for set_trace_func might be sweet, too :)

most of the cost is block activation.