Vladimir Prus wrote:
Frank Mori Hess wrote:
On Thursday 03 January 2008 12:43, j.c. wrote:
So the consensus here is to not use BOOST signals? I could implement Noone said that.
the calls another way that would not break when the application becomes multithreaded, which is likely to happen at some point. I would have to implement some sort of queue and lookup an id and then via a pointer trigger the target function along with parameter. Also I noticed that BOOST signals added a cool 300KB to my static lib, strippable to 200KB, which I am not too happy about since this lib's intentions was small size.
Ouch! Out of curiosity, does compiling with size optimization or disabled inlining has noticable effect on this? In general, it seems like code size was never much of concern inside boost.
Just guessing -- but it's most likely to be RTTI from polymorphic template instantiations: class A { // ... virtual ~A() { } }; template< typename T > class B : public A { // implements abstract A } // ... instantate many B's Now the compiler has to generate RTTI that can't be stripped for every instantiation of the 'B' template, because 'typeid(T)' is guaranteed to return a descriptions of the most derived class in client code of the library. The bloat effect has been observed to be especially severe with GCC. Regards, Tobias