fdbus
fdbus copied to clipboard
void onInvoke(CBaseJob::Ptr &msg_ref) 中的msg_ref有问题
msg_ref为智能指针,但是被捕获切换线程处理,好像已经被删除,为空。 后来只能如下处理,将其中的值先取出,赋给buffer CBaseMessage *msg = castToMessage<CBaseMessage *>(msg_ref); if (nullptr != msg) { std::shared_ptrstd::string buffer(std::make_sharedstd::string()); buffer->assign((char *)(msg->getPayloadBuffer()), msg->getPayloadSize()); int32_t code = msg->code(); } });