Ok. With receiver slot like:
void DataLoader:n_readyReadStdout() {
proc.readStdout();
}
I have about 6.5s, not a biggie.
The real receiver is:
void DataLoader:n_readyReadStdout() {
// we use a circular buffer to store data chunks from loading process
QByteArray* b = new QByteArray(proc.readStdout()); // copy c'tor uses shallow copy
buffersRing.insert(buffersRingHead, b);
if (++buffersRingHead == BUF_RING_SIZE)
buffersRingHead = 0;
}
But I really don't know how to make it faster. Could you spot some hidden copies on above code?
Thanks
Marco




n_readyReadStdout() {
Reply With Quote



Bookmarks