Название: QProcess: конвейер комманд и индикатор передачи данных Отправлено: MelkorBSD от Октябрь 21, 2009, 14:34 Есть, предположим, следующая команда:
Код: lzma d -so /tmp/xxx.tar.lzma | tar -xpf - -C /tmp/xxx В простом случае в Qt это представляется как Код: *Process1 = new QProcess(); Стоит задача построить индикатор передачи данных из первого процесса во второй Строим так: Код: ui->progressBar->setRange(0,1000000000); А слот для передачи данных содержит следующий код: Код: void MainWindow::MyReadyRead() Вроде бы это работает, но возникает следующая проблема: В произвольный момент времени процесс распаковки данных прекращается (а до конца архива еще далеко), при этом и первый и второй процесс завершаются без ошибок. Что бы это могло быть и как избежать "потерь"? PS: При попытке использовать чтение с помощью read вместо readAll число "потерь" увеличивается. |