1
如何在mbed客户端连接到设备服务器时删除对象及其实例?使用mbed-client上的mbed-client删除LWM2M对象时,应用程序崩溃
目前我有一个类,在构造函数中创建一个对象,我注册它与mbed客户端。我也想在调用析构函数时删除这个对象。我想以下几点:
在构造函数中:
object = M2MInterfaceFactory::create_object(name);
instance = object->create_object_instance();
在析构函数:
object->remove_object_instance(instance->instance_id());
// delete object;
上面的代码工作,但该对象永远不会从内存中删除。
如果我取消注释行来调用对象的析构函数,那么我的应用程序崩溃。我用mbed-trace来查看是否有任何错误消息,但找不到任何东西。 Here是从调用到析构函数的日志输出,直到应用程序崩溃。
我正在使用mbed-os 5.4.1的Nucleo-F401RE。
在删除资源之前,您是否先注销(使用mbed客户端)? –
不,客户端仍在注册。我的意图是在客户端连接时动态地创建和删除对象。 – araad
我敢肯定,根据OMA LwM2M规范,这是不允许的。 –