forked from p308945/MyNetWorkLib
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMyClient.cpp
More file actions
42 lines (39 loc) · 1.05 KB
/
MyClient.cpp
File metadata and controls
42 lines (39 loc) · 1.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
/*************************************************************************
> File Name: MyClient.cpp
> Author: huangyun
> Mail: 895175589@qq.com
> Created Time: Sun 09 Aug 2015 01:10:29 AM
************************************************************************/
#include "MyClient.h"
#include "MyClientTaskManager.h"
#include "MyClientTask.h"
namespace MyNameSpace
{
bool MyClient::init(std::multimap<int, int> &ipPortPair)
{
if (!mTaskPool.init())
{
std::cerr<<__FUNCTION__<<"("<<__LINE__<<"): task pool init fail"<<std::endl;
}
for (std::multimap<int,int>::iterator it = ipPortPair.begin(); it != ipPortPair.end(); ++it)
{
++mUniqueId;
MyClientTask *task = new MyClientTask(mUniqueId, it->first, it->second);
if (NULL != task)
{
MyClientTaskManager::getInstance().addTask(task);
mTaskPool.addTask(task);
}
}
return true;
}
void MyClient::mainLoop()
{
while(!isFini())
{
MyClientTaskManager::getInstance().doProcessMsg();
// MyClientTaskManager::getInstance().testSend();
usleep(3 * 1000);
}
}
}