Подробности

[В начало]

Проблема в стандарте № S0647

Краткое описание

Стандарт для методов установки размера буфера в классе QSocketDevice не описывает некоторые особенности их поведения на Linux-системах

Подробное описание

Согласно стандарту методы QSocketDevice::sendBufferSize() const и QSocketDevice::receiveBufferSize() const должны возвращать размеры send-буфера и receive-буфера соответственно, которые устанавливаются методами QSocketDevice::setSendBufferSize(unsigned int) и QSocketDevice::setReceiveBufferSize(unsigned int). На Linux-системах эти методы реализованы через функции ядра, которые удваивают выделяемый размер буфера. Поэтому методы QSocketDevice::sendBufferSize() и QSocketDevice::receiveBufferSize() возвращают удвоенный размер буфера, по сравнению с тем, что был устанавлен с помощью setSendBufferSize(unsigned int) и setReceiveBufferSize(unsigned int) соответственно. Эта особенность поведения методов класса QSocketDevice признана разработчиками Qt как корректная, и, соответственно, она должна быть описана в документации для данного класса.

Раздел стандарта

Linux Standard Base Core Specification 3.1, Chapter 13. Base Libraries, 13.5., который ссылается на Qt 3.3.6 Reference Manual

Принято

reported to qt-bugs@trolltech.com

[В начало]