ThreadEfficiency.cpp
/* 
*  Note:   durationExec is longer than durationTotal in multithreading applications because
*            durationExec time occurs simultanously and is added up, where durationTotal is
*            simply start to finish.
*  @brief: prints stats about the algorithm execution post execution
*/
durationExec is longer than durationTotal in multithreading applications because
durationExec time occurs simultanously and is added up, where durationTotal is
simply start to finish.
durationExec is longer than durationTotal in multithreading applications because durationExec time occurs simultanously and is added up where durationTotal is simply start to finish .
void printStats(params& p, results r, std::ostream& os) {
    if (r.algoDuration.count() != 0) 
        os << r.algoDuration.count() << " microseconds" << " - Time taken by the algorithm.\n";
    if (r.functDuration.count() != 0) 
        os << r.functDuration.count() << " microseconds" << " - Time taken to execute algorithm & supporting functions.\n";
    os << "Correct: " << r.correct << ", Total Files: " << p.count << "\n\n";
}
void printStats ( params & p , results r , std :: ostream & os ) { if ( r . algoDuration . count ( ) != 0 ) os << r . algoDuration . count ( ) << " " << " \n " ; if ( r . functDuration . count ( ) != 0 ) os << r . functDuration . count ( ) << " " << " \n " ; os << " " << r . correct << " " << p . count << " \n \n " ; }
Note:   durationExec is longer than durationTotal in multithreading applications because
durationExec time occurs simultanously and is added up, where durationTotal is
simply start to finish.
Note : durationExec is longer than durationTotal in multithreading applications because durationExec time occurs simultanously and is added up where durationTotal is simply start to finish .