Changeset 22 in chevmsgr
- Timestamp:
- 11/28/15 20:57:41 (8 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/msgclnt.cpp
r20 r22 152 152 Protocol::Message MessageQ::pop(const std::string & requestType, bool isWait) 153 153 { 154 Protocol::Message msg; 155 154 156 do 155 157 { 158 if (messageQ.size() == 0) 159 continue; 160 156 161 mutex.lock(); 157 if (messageQ.size() == 0) 158 { 159 mutex.unlock(); 160 continue; 161 } 162 163 Protocol::Message message = messageQ.front(); 164 165 if (message.type() == requestType) 166 { 167 messageQ.erase(messageQ.begin()); 168 mutex.unlock(); 169 return message; 162 if (messageQ.size() > 0) 163 { 164 if (messageQ.front().type() == requestType) 165 { 166 msg = messageQ.front(); 167 messageQ.pop_front(); 168 isWait = false; 169 } 170 170 } 171 171 mutex.unlock(); 172 172 } while (isWait); 173 173 174 return Protocol::Message(); // return dummy NONE174 return msg; 175 175 } 176 176 … … 199 199 { 200 200 secureSocket.close(); 201 listener.join();202 caller.join();203 201 } 204 202 -
trunk/msvc14/testClient/test.cpp
r18 r22 77 77 T(c.listen(cb)); 78 78 79 sms = " 633174";// CIN(sms);79 sms = "545454";// CIN(sms); 80 80 if (mode == "join") 81 81 {
Note:
See TracChangeset
for help on using the changeset viewer.