Basically yes.
The difference is that waitForFinished() only tests for thread state (returns when no longer running) when result() checks also for internal result and returns when thread has finished or result is ready.
// waitForFinished():
while (d->state & Running)
d->waitCondition.wait(&d->m_mutex);
// waitForResult():
while ((d->state & Running) && d->internal_isResultReadyAt(waitIndex) == false)
d->waitCondition.wait(&d->m_mutex);
}
// waitForFinished():
while (d->state & Running)
d->waitCondition.wait(&d->m_mutex);
// waitForResult():
while ((d->state & Running) && d->internal_isResultReadyAt(waitIndex) == false)
d->waitCondition.wait(&d->m_mutex);
}
To copy to clipboard, switch view to plain text mode
Bookmarks