Цитата(andrewlekar @ Oct 6 2011, 14:15)

Больше не знаю, где задать этот вопрос...
Заметил у lwIP такую проблему, что если при пропадании линка закрывать сокет, а при восстановлении линка создавать его заново, валятся ошибки выделения памяти MEMP_TCP_PCB. Проблема, судя по всему, в том, что при пропадании линка сокет остаётся активным и не может корректно закрыться. При последуюшем создании сокета обнаруживается, что больше свободных сокетов нет и после принудительного удаления активного соединения всё создается как надо.
Проблема не очень серьёзная, но хотелось бы выяснить, как её обойти, и у всех ли она проявляется.
Для проверки попробуйте создавать сокет после появления линка, закрывать через close после исчезновения линка. Ограничьте память до одного сокета: MEMP_NUM_TCP_PCB = 1.
Исчезновение линка происходит не мнгновенно, это надо понимать... Если ты дал команду на закрытие линка, а после команду на зарытия сокета - это вовсе не значит, что вначале закроется линк, а потом сокет. Из за этого и память утекает.
Рекомендуется делать паузу ... на сколько большую - зависит от платформы и ОС :-)
И кстати под QT такой проблемы быть не может в принципе. :-)
Это не то что вы подумали ...