unordered_map<u64_t,u32_t>u64_to_conv;//conv and u64 are both supposed to be uniq
unordered_map<u32_t,u64_t>conv_to_u64;
unordered_map<u32_t,u64_t>conv_last_active_time;
unordered_map<u32_t,u64_t>::iteratorclear_it;
unordered_map<u32_t,u64_t>::iteratorit;
unordered_map<u32_t,u64_t>::iteratorold_it;
//void (*clear_function)(uint64_t u64) ;
longlonglast_clear_time;
conv_manager_t();
~conv_manager_t();
intget_size();
voidreserve();
voidclear();
u32_tget_new_conv();
intis_conv_used(u32_tconv);
intis_u64_used(u64_tu64);
u32_tfind_conv_by_u64(u64_tu64);
u64_tfind_u64_by_conv(u32_tconv);
intupdate_active_time(u32_tconv);
intinsert_conv(u32_tconv,u64_tu64);
interase_conv(u32_tconv);
intclear_inactive(char*ip_port=0);
intclear_inactive0(char*ip_port);
};//g_conv_manager;
structconn_info_t//stores info for a raw connection.for client ,there is only one connection,for server there can be thousand of connection since server can
structconn_manager_t//manager for connections. for client,we dont need conn_manager since there is only one connection.for server we use one conn_manager for all connections