Задать вопрос
@sitev_ru
sitev.ru - мой блог ...

Почему тут может вылетать программа?

Если отправляю на обычный компьютер, то норм, а если на Android - то вылетает...

bool Socket::sendAll(void *buffer, int size) {
	if (!isValid()) return 0;
	char *ptr = (char*) buffer;

	int counter = 0;
	while (size > 0)
	{
		int sz = ::send(m_sock, ptr, size, 0);
		usleep(1000);
		if (sz < 1) {
			counter++;
			if (counter > 10000) return false;
			continue;
		}
		ptr += sz;
		size -= sz;
	}

	return true;
}
  • Вопрос задан
  • 254 просмотра
Подписаться 1 Оценить 2 комментария
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Android-разработчик
    12 месяцев
    Далее
  • Нетология
    Android-разработчик с нуля
    14 месяцев
    Далее
  • LearnQA
    Автоматизатор мобильных приложений
    9 недель
    Далее
Пригласить эксперта
Ответы на вопрос 1
@TriKrista
Как вариант переменной buffer не всегда выделяется память
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы