[AGENT++] Agentpp::QueuedThreadPool does not executes its queue entries

Frank Fock fock at agentpp.com
Mon Sep 11 01:39:07 CEST 2017


Hi Claus,

I think it would be sufficient to call 
queuedThreadPool.start();
In your test program to run it successfully, doesn't it?

Best regards,
Frank


> On 8. Sep 2017, at 21:01, Claus Klein <claus.klein at arcormail.de> wrote:
> 
> Hi Frank,
> 
> I’m sorry to bother you again, but I have found an additional problem within threads.cpp:
> 
> void QueuedThreadPool::run()
> {
>    go = TRUE;
>    Thread::lock();
>    while (go) {
>        Runnable* t = queue.removeFirst();
>        if (t) {
>            assign(t);
>        }
>        Thread::wait(1000);
>    }
>    Thread::unlock();
> }
> 
> void QueuedThreadPool::idle_notification()
> {
>    Thread::lock();
>    Thread::notify();	//###XXX### why is this called? CK
>    Thread::unlock();
>    ThreadPool::idle_notification();
> }
> 
> The run() method is never called, so every queued task is never executed.
> 
> I send you my test program too.
> 
> P.S. Do you have unit tests for agentpp?
> 
> Best regards
> Claus
> 
> _______________________________________________
> AGENTPP mailing list
> AGENTPP at agentpp.org
> https://oosnmp.net/mailman/listinfo/agentpp



More information about the AGENTPP mailing list