Это обычное использование бесконечного цикла.
Мы используем этот цикл на тот случай, если не знаем, сколько раз нам нужно выполнить код внутри цикла. Поэтому нам нужно также определить условие, чтобы выйти из этого цикла.
Вот пример получения длинного сообщения с сервера:
for (;;)
{
//Receive the maximum allowed size of the message
//Save(Concatenate) the received data in a variable (TotalReceivedData)
// If the length of the received part of the message is equal to zero , break the operation
//<Break the loop>if(message.length == 0){break;}</Break the loop>
}
И здесь вы можете использовать полностью полученное сообщение, хранящееся в переменной TotalReceivedData.
Я добавил этот пример, потому что только что натолкнулся на такой случай.