我想知道是否有办法检查提升回叫功能的有效性。
问题如下
A级; B级;
在A类的初始化函数中完成以下操作。
boost :: function< void(B类)> call_back;
using namespace boost :: lambda; call_back = bind(& A :: callback_after_preparation,this,boost :: lambda :: _ 1);
问题是从QThread调用回调,在从QThread调用A :: callback_after_preparation之前,A的对象从应用程序中删除(这是应用程序中的一个用例)
因此在访问A中的数据库时应用程序退出。
有没有办法检查call_back函数的有效性?
请回答
答案 0 :(得分:0)
你真的在问是否有任何方法可以知道某个特定对象已被删除,大概是在另一个线程中。由您的代码来处理这样的事情 - 毕竟通过设置某种标志,您的代码执行了删除。