Re: [Vala] GObject allocation / referencing... Why is so slow?



2011/1/15 Aleksander Wabik <alex wabik gmail com>:

Other thing: signals. Did someone measured their performance? I did
once, its AWFUL! Why? Well, here we also are using highly reusable, and
very slow code. Signals are referenced by name (yes, string!), signals
get complicated marshallers for their parameters... I don't know if it
can be fixed easily in glib profile, but in such language like vala the
signal could be implemented as a list of function pointers! I bet that
any JIT, in C# or in Java (when java will finally support
events/signals) will beat glib signals easily. A matter of general
design.


This can be improved a bit using the new g-object-notify-by-pspec()
[1]  and g-object-class-install-properties() [2] API added in Glib
2.26

[1] http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-notify-by-pspec
[2] 
http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-class-install-properties
-- 
Javier Jardón Cabezas



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]