Название: Очистка QBuffer при чтении. Отправлено: altVis от Март 21, 2008, 10:59 День добрый.
Можно ли каким-нибудь способом заставить QBuffer вести себя, как QTcpSocket, т.е. надо чтобы после read или readAll, из буффера удалялись прочитанные данные? Если после считывания закрыть и снова открыть буффер, в нём содержится предыдущая информация. Название: Re: Очистка QBuffer при чтении. Отправлено: Sergeich от Март 21, 2008, 11:18 Отнаследуйся от QBuffer и переопредели readData()
Название: Re: Очистка QBuffer при чтении. Отправлено: altVis от Март 21, 2008, 11:23 А как вообще удалить данные из буффера?
Не перезаписать, а именно удалить их оттуда? Название: Re: Очистка QBuffer при чтении. Отправлено: Sergeich от Март 21, 2008, 11:45 Код: QBuffer buf; Название: Re: Очистка QBuffer при чтении. Отправлено: altVis от Март 21, 2008, 11:56 Код: QBuffer buf; Блин!Точно! Спасибо :) Хотя удобнее наверное buffer().clear() И ещё вопрос. А стоит ли отказываться от tcpsocket буффера в пользу своего? Т.е. например на данный момент в программе просто передаётся ссылка на сокет в функции, откуда считывается информация. Стоит ли создавать свой буффер и на readyRead() сокета просто скидывать всю полученную информацию в буффер, а потом передавать уже его в функции? Есть ли какие-то реальные плюсы от этого? Функции без бесконечных циклов, да и процессорное время практически не отнимают, т.е. задержек нет. |