On Monday, August 15, 2011, Szymon Gatner wrote:
Any plans to do signals\signals2 movable? Just getting used to move things with great boost.move + boost.container libraries and being able to do same with signal-related code would be really nice as now the only way to deal with that is to keep signals on the heap which I find rather awkward.
I have some rather indefinite plans to add move support, at least when compiling in c++0x mode. A swap function for signals2::signal() could be added to make a poor man's move possible for non c++0x code. I'm not sure I want to bother with move emulation. As an aside, I'm also thinking of doing some more reference counting so that user's slot objects will get destroyed more promptly after they are disconnected (as soon as they are no longer being executed by any concurrent signal invocations). It will add a bit of overhead (at least 1 extra mutex lock/unlock per signal invocation) but people seem to find the current garbage collection of slot objects surprising. I'm not promising to do any of this in the immediate future though. So if you are impatient, patches are welcome.