Prevent the creation of new threads if system load climbs at shutdown
[citadel.git] / citadel / server_main.c
index 20bc5dddf0629e0b2912e60a5a7fe2fa0b90302e..27942365d7ba7cd90aa37c0e6dcd794de8b6fda8 100644 (file)
@@ -426,7 +426,7 @@ void go_threading(void)
                 */
 //             if ((CtdlThreadGetWorkers() < config.c_max_workers) && (CtdlThreadGetWorkers() < num_sessions))
                // && (CtdlThreadLoadAvg < 90) )
-               if ((CtdlThreadGetWorkers() < config.c_max_workers) && (CtdlThreadGetWorkerAvg() > 60) && (CtdlThreadGetLoadAvg() < 90) )
+               if ((CtdlThreadGetWorkers() < config.c_max_workers) && (CtdlThreadGetWorkerAvg() > 60) && (CtdlThreadGetLoadAvg() < 90) && (CT->state > CTDL_THREAD_STOP_REQ))
                {
                        for (i=0; i<5 ; i++)
 //                     for (i=0; i< (num_sessions - CtdlThreadGetWorkers()) ; i++)