[Interest] how to run 21 threads concurrently

Sascha Cunz sascha-ml at babbelbox.org
Thu Oct 4 19:14:31 CEST 2012


Hi Sujan,

your threads don't output all data to disk, because you forgot some curly 
braces in the second loop.

Sascha

Am Donnerstag, 4. Oktober 2012, 16:21:10 schrieb Sujan Dasmahapatra:
> I am not able to run my threads concurrently please help.
> How can I  run 21 threads concurrently and get the job done by 8 cpus what
> I have in my machine.
> 
> I am doing like this
> [code]
> 
> std::vector<QFuture<void> > Threads;
> QFuture<void> Th;
> 
> for(int z=0; z<21; z++)
> {
> Th = QtConcurrent::run(this,&UnrstParser,z);
> Thraeds.push_back(Th);
> }
> for(int th=0; th<Threads.size(); th++)
> {
>  if(Threads[th].isRunning())
{
> Threads[th].waitForFinished();
> Threads[th].cancel();
}
> }
> Threads.clear();
> [/code]
> 
> With this first few threads are probably running but not all the threads.
> As it's supposed to generate some files by each thread which is not being
> generated. Please help.



More information about the Interest mailing list