jeremyczhen / fdbus

FDBus - Fast Distributed Bus
https://blog.csdn.net/jeremy_cz/article/details/89060291
161 stars 85 forks source link

void onInvoke(CBaseJob::Ptr &msg_ref) 中的msg_ref有问题 #30

Open ByteXiaoTang opened 3 years ago

ByteXiaoTang commented 3 years ago

msg_ref为智能指针,但是被捕获切换线程处理,好像已经被删除,为空。 后来只能如下处理,将其中的值先取出,赋给buffer CBaseMessage msg = castToMessage<CBaseMessage >(msg_ref); if (nullptr != msg) { std::shared_ptr buffer(std::make_shared()); buffer->assign((char *)(msg->getPayloadBuffer()), msg->getPayloadSize()); int32_t code = msg->code(); } });