csocketmap.cpp
来自「一个学习STL 中Map的类」· C++ 代码 · 共 52 行
CPP
52 行
#include SocketMap.h
CSocketMap()
{
pthread_mutex_init(&m_mutex,null);
m_SocketMap.clear();
}
~CSocketMap()
{
m_SocketMap.clear();
}
void InsertSocketMap(int nSocket )
{
pthread_mutex_lock(&m_mutex);
m_SocketMap.insert(nSocket,nSocket);
pthread_mutex_unlock(&m_mutex);
}
/* FindSocketMap 在Map中查找是否已经存在*/
int FindSocketMap(int nSocket)
{
pthread_mutex_lock(&m_mutex);
std::map<int,int>::iterator pos = m_SocketMap.find(nSocket);
if(pos != m_SocketMap.end())
{
return pos->second;
}
else
return 0;
pthread_mutex_unlock(&m_mutex);
}
/*从MAP中移除对应的消息*/
void EraseSocketMap(int nSocket)
{
pthread_mutex_lock(&m_mutex);
std::map<int , int>::iterator pos = m_SocketMap.find(nSocket);
if(pos != m_SocketMap.end())
{
m_SocketMap.erase(pos);
}
pthread_mutex_unlock(&m_mutex);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?