I have read recently in your Doxygen documentation related to

template<typename F >
boost::function< void()> Wt::WApplication::bind (       const F &       f       
)       

the following statement:

"in the same way as how a signal automatically disconnects slots from
objects that are being deleted"

Since wt slots are implemented in terms of boost signals you have to
keep in mind the fact that issuing a
connection::disconnect() doesn't avoid the fact that the signal is
delivered to disconnected "slot" if you perform the disconnection
while the signal is being delivered.

To be clear, if you do:

connection con1 = signal.connect(&foo);
connection con2 = signal.connect(&bar);

and then:

signal();

if another thread performs:  con2.disconnect();

then bar() will be called as well even if the signal() call is "executing" foo.

I haven't seen WT code but I hope this mechanism is clear to you.


Regards
Gaetano

-- 
cpp-today.blogspot.com

------------------------------------------------------------------------------
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
_______________________________________________
witty-interest mailing list
witty-interest@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/witty-interest

Reply via email to