我在对象1上有一个Boost.Signals2信号,并在对象2上连接到它。
如果对象2遭到破坏,信号将不会断开连接,当信号发出时可能会导致不好的事情。
为了解决这个问题,我在对象2上保留scoped_connection
。现在的问题是如果对象1与信号一起破坏,然后对象2破坏。
会造成问题吗?有没有更好的方法来解决一般问题? (从对象1 - >对象2有连接,当它们被破坏时它们将断开连接)。Boost.Signals2破坏安全
演示问题A码:
auto sig = new signal<void()>();
auto conn = new scoped_connection(sig.connect(&some_function));
delete sig;
delete conn;
这安全吗?