From 5154e80b61bc5678cd1ce6018fd52b023c4b9079 Mon Sep 17 00:00:00 2001 From: Pixel Date: Tue, 15 Nov 2011 11:52:54 -0800 Subject: Moving the static yield from Task.h to Task.cc. You don't want to throw an exception from a .h file... --- includes/Task.h | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) (limited to 'includes/Task.h') diff --git a/includes/Task.h b/includes/Task.h index b124731..156add2 100644 --- a/includes/Task.h +++ b/includes/Task.h @@ -116,19 +116,7 @@ class Task { Task * t = getCurrentTask(); t->waitFor(evt); } - static void yield(Events::BaseEvent * evt, bool interruptible = false) throw (GeneralException) { - Task * t = getCurrentTask(); - t->waitFor(evt); - - do { - t->yield(); - Printer::elog(E_TASK, "operation back from yielding; interruptible = %s; okayToEAgain = %s", interruptible ? "true" : "false", t->m_okayToEAgain ? "true" : "false"); - } while ((!interruptible || !t->m_okayToEAgain) && !evt->gotSignal()); - if (interruptible && t->m_okayToEAgain && !evt->gotSignal()) { - Printer::elog(E_TASK, "operation is throwing an exception."); - throw EAgain(evt); - } - } + static void yield(Events::BaseEvent * evt, bool interruptible = false) throw (GeneralException); TaskMan * getTaskMan() { return m_taskMan; } struct ev_loop * getLoop(); protected: -- cgit v1.2.3