Én ezt a részt nem értem teljesen:
"amit te mar elengedtel, es rogton utana szeretnel egy ujat letrehozni, akkor a bind() el fog hasalni, mivel a regi socket meg nincs bezarva. Ez konkretan helytelen viselkedes es csak a using tud segiteni rajtad."
Ha a megfelelő módon (serverSocket.close())-zal kerül a socket lezárásra, utána szerintem simán lehet újra socket-et nyitni, ennek működnie kell.