This commit is contained in:
aozhiwei 2020-06-16 16:42:34 +08:00
parent 93f07b409f
commit 6d196eb844
3 changed files with 5 additions and 1 deletions

View File

@ -11,7 +11,7 @@
void CacheMgr::Init() void CacheMgr::Init()
{ {
INIT_LIST_HEAD(&friend_list_);
} }
void CacheMgr::UnInit() void CacheMgr::UnInit()
@ -35,6 +35,7 @@ void CacheMgr::_SS_IM_UserOnline(f8::MsgHdr& hdr, const ss::SS_IM_UserOnline& ms
if (!friend_data) { if (!friend_data) {
friend_data = new Friend(); friend_data = new Friend();
list_add_tail(&friend_data->human_entry, &svr_node->human_list); list_add_tail(&friend_data->human_entry, &svr_node->human_list);
list_add_tail(&friend_data->cache_entry, &friend_list_);
friend_data->svr_node = svr_node; friend_data->svr_node = svr_node;
friend_hash_[user_info.base_data().account_id()] = friend_data; friend_hash_[user_info.base_data().account_id()] = friend_data;
} else { } else {

View File

@ -25,4 +25,5 @@ class CacheMgr : public a8::Singleton<CacheMgr>
private: private:
std::map<std::string, Friend*> friend_hash_; std::map<std::string, Friend*> friend_hash_;
list_head friend_list_;
}; };

View File

@ -37,11 +37,13 @@ struct Friend
BaseUserData base_data; BaseUserData base_data;
UserTempCustomData temp_custom_data; UserTempCustomData temp_custom_data;
list_head cache_entry;
list_head human_entry; list_head human_entry;
struct SvrNode* svr_node = nullptr; struct SvrNode* svr_node = nullptr;
Friend() Friend()
{ {
INIT_LIST_HEAD(&human_entry); INIT_LIST_HEAD(&human_entry);
INIT_LIST_HEAD(&cache_entry);
} }
}; };