Fijate q cuando llamas a erase te retorna un iterador al siguiente elemento pero luego vos haces un ++it en el for-loop lo q hace q ese elemento se saltee. O sea, estas avanzando dos veces.
Una forma simple de solucionarlo es con un while-loop haciendo o un it = erase() o un ++it.
Hola dipa, ya pude arreglar el error, me habia quedado un 0 en el backlog del accept, se ve que en mi pc no rompia pero en el sercom si. Tenia otros bugs ademas incluido este. Muchas gracias por la ayuda!
https://github.com/mati1297/tp3_taller1/blob/675a17d2db21ec718827b81011e99f05e7a2c246/server_acceptor_thread.cpp#L38-L47
Fijate q cuando llamas a
erase
te retorna un iterador al siguiente elemento pero luego vos haces un++it
en el for-loop lo q hace q ese elemento se saltee. O sea, estas avanzando dos veces.Una forma simple de solucionarlo es con un while-loop haciendo o un
it = erase()
o un++it
.