Я пытаюсь запустить приложение, которое обрабатывает клиентов по сети под проверкой приложения.
Приложение содержит карту для обслуживания клиентов и семафор с максимальным счетом 1 для блокировки карты.
Без верификатора он работает без ошибок, но когда верификатор присоединен, я получаю следующую ошибку времени выполнения:
итератор map / set не увеличивается
для следующего кода:
Lock l(_mapLock); // This object uses a semaphore for synchronization
MapType::iterator it;
ClientInfo info;
it = _clientsMap.begin();
for (it = _clientsMap.begin(); it != _clientsMap.end(); it++) {
(*it).second->getInfo(&info);
if (strcmp(info.ip, clientIp.c_str()) == 0) {
return DUPLICATE_CLIENT;
}
}
Есть идеи о возможной причине?
Заранее спасибо.
Задача ещё не решена.
Других решений пока нет …