From 366ebfe19c715dc3773637f786f5a591a6bb8199 Mon Sep 17 00:00:00 2001 From: Arnaud Giersch Date: Wed, 19 Jan 2011 11:21:37 +0100 Subject: [PATCH 1/1] Move sleep between iterations in a better place. --- process.cpp | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/process.cpp b/process.cpp index 0f53576..80fd618 100644 --- a/process.cpp +++ b/process.cpp @@ -72,18 +72,13 @@ int process::run() VERB0("Starting..."); comp_iter = lb_iter = 0; while (true) { - if (opt::min_iter_duration) { + double ld = lb_load(); + if (ld > 0.0) { double now = MSG_get_clock(); - if (now < next_iter_after_date){ - double delay = next_iter_after_date - now; - DEBUG1("sleeping for %g s", delay); - MSG_process_sleep(delay); - } + if (now < next_iter_after_date) + MSG_process_sleep(next_iter_after_date - now); next_iter_after_date = MSG_get_clock() + opt::min_iter_duration; - } - double ld = lb_load(); - if (ld > 0.0) { ++lb_iter; if (opt::log_rate && lb_iter % opt::log_rate == 0) { -- 2.39.5