У меня странный стек вызовов, и я не понимаю, почему.
Мне кажется, что asio вызывает чтение open ssl, а затем получает отрицательное возвращаемое значение (-37).
Кажется, что Asio пытается использовать его внутри функции memcpy.
Функция, которая вызывает этот стек вызовов, используется сотни тысяч раз без этой ошибки.
Это случается редко, примерно раз в неделю.
ulRead = (boost::asio::read(spCon->socket(), boost::asio::buffer(_requestHeader, _requestHeader.size()), boost::asio::transfer_at_least(_requestHeader.size()), error_));
Обратите внимание, что размер заголовка запроса всегда равен 3 байта.
Может ли кто-нибудь пролить свет на возможные причины?
Примечание: я использую boost asio 1.36
Вот сбой стека вызовов, происходящий в memcpy из-за огромного «количества»: