Boost logo

Boost Users :

From: Timmo Stange (ts_at_[hidden])
Date: 2007-02-02 19:24:11


Frank Mori Hess wrote:

[...]
> Then any slots with expired weak_ptrs could be cleaned up
> when the signal is next emitted, or also in signal::connect() to prevent
> lots of dead connections from accumulating. If we do cleanup in
> connect(), then I could get rid of the disconnect callback stuff I added,
> since it would be mostly redundant.

As I mentioned in my reply to Peter Dimov, the current Boost.Signals
implementation solves this from the call and disconnection context only.
A limited number of dangling connections is not a problem and as this
approach only prohibits direct removal of connections from the call
context (with the same cleanup of dead connections that you already
do), the problem I described does not exist.
Is there a special reason you started from scratch instead of using
Doug's implementation as a starting point? I know I may come a little
late with this, but most of it seems to be reusable for a thread-safe
version.

Regards

Timmo Stange


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net