Первая возможность заключается в том, что send () не удалось и вернул SOCKET_ERROR. Ваш код не может обнаружить это, вы действительно должны это исправить.
Следующая возможность заключается в том, что send () просто не блокируется. Что вполне нормально, оно блокируется только тогда, когда в транспортной подсистеме не осталось буферного пространства. Вам придется прокачать несколько мегабайт, прежде чем это произойдет.