использование QTextStream для чтения stdin не блокирующимся способом

Похоже на использование mingw компиляции Мерзавца на окнах (или возможно другой я не услышал о). Существуют способы отладить это: Я полагаю, что вся работа прокси HTTP для мерзавца сделана завихрением. Установите эту переменную среды перед рабочим мерзавцем:

GIT_CURL_VERBOSE=1

Это должно, по крайней мере, дать Вам общее представление о том, что продолжается негласно.

8
задан Thomi 13 August 2009 в 12:52
поделиться

1 ответ

Буферизация строки.

По умолчанию сбрасывается после "\ n". Если вы напишете в свой процесс 5 строк, ваш слот будет вызван 5 раз. Если вы хотите этого избежать, вам нужно вызвать setbuf (stdin, _IOFBF). Но даже в этом случае не гарантируется, что вы сможете читать произвольно большие объемы данных в одном фрагменте.

Edit: Вероятно, было бы лучше использовать QTextStream :: atEnd () вместо select, поскольку QTextStream имеет свои собственные внутренние буферы.

4
ответ дан 5 December 2019 в 23:16
поделиться
Другие вопросы по тегам:

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