X-Git-Url: https://git.teslayout.com/public/public/public/?p=anna.git;a=blobdiff_plain;f=include%2Fanna%2Fcore%2Fmt%2FRunnable.hpp;fp=include%2Fanna%2Fcore%2Fmt%2FRunnable.hpp;h=369fdd88ba9568ded20459ec7df4818725d5f73f;hp=c2e97895c7fc97139716525a98af048c07c47ed0;hb=5a6cba5fde2b2f538a7515f8293cc0a8d9589dfa;hpb=af9c86ffb0e28d35ad94d99c5f77e41578c972b4 diff --git a/include/anna/core/mt/Runnable.hpp b/include/anna/core/mt/Runnable.hpp index c2e9789..369fdd8 100644 --- a/include/anna/core/mt/Runnable.hpp +++ b/include/anna/core/mt/Runnable.hpp @@ -31,7 +31,7 @@ public: Devuelve el nombre logico de esta instancia. @return El nombre logico de esta instancia. */ - const std::string& getId() const throw() { return a_id; } + const std::string& getId() const { return a_id; } /** Devuelve el valor del indicador de parada. @@ -39,25 +39,25 @@ public: \warning La implementacion particular del metodo run deberia comprobar este valor periodicamente. */ - bool hasRequestedStop() const throw() { return a_requestedStop == true; } + bool hasRequestedStop() const { return a_requestedStop == true; } /** Devuelve \em true si la instancia esta en ejecucion dentro de su propio thread o \em false en otro caso. \return \em true si la instancia esta en ejecucion dentro de su propio thread o \em false en otro caso. */ - bool isRunning() const throw() { return a_isRunning; } + bool isRunning() const { return a_isRunning; } /** Solicita la parada de esta instancia. */ - void requestStop() throw(RuntimeException); + void requestStop() noexcept(false); /** Devuelve una cadena con la informacion relevante de este objeto. \return Una cadena con la informacion relevante de este objeto. */ virtual std::string asString() const - throw() { + { std::string result("anna::Runnable { Id: "); result += a_id; result += functions::asText(" | Running: ", a_isRunning); @@ -87,38 +87,38 @@ protected: Establece el nombre logico de esta instancia. \param id Nuevo nombre logico de esta instancia. */ - void setId(const std::string& id) throw() { a_id = id; } + void setId(const std::string& id) { a_id = id; } /** Establece el indicador que informa sobre si esta instancia esta en ejecucion o no. \param isRunning Indicador que informa sobre si esta instancia esta en ejecucion. \warning Uso interno. Se invoca automaticamente desde Thread. */ - void setIsRunning(const bool isRunning) throw() { a_isRunning = isRunning; } + void setIsRunning(const bool isRunning) { a_isRunning = isRunning; } /** Metodo que se debe reescribir para inicializar el contenido de la clase justo antes de comenzar su ejecucion. */ - virtual void initialize() throw(RuntimeException) {;} + virtual void initialize() noexcept(false) {;} /** Metodo que debe reescribir para realizar la accion concreta. Por defecto invocara do_action mientras que no se invoque la metodo requestStop de la instancia. */ - virtual void run() throw(RuntimeException); + virtual void run() noexcept(false); /** Metodo que se debe reescribir para finalizar la ejecucion de esta instancia. \warning La re-implementacion de este metodo siempre debera invocar a la implementacion original que esta re-escribiiendo. */ - virtual void terminate() throw() { a_requestedStop = false; } + virtual void terminate() { a_requestedStop = false; } /** Metodo indicado por Runnable::run en tanto en cuanto no se invoque a requestStop. */ - virtual void do_action() throw(RuntimeException) = 0; + virtual void do_action() noexcept(false) = 0; private: std::string a_id; @@ -128,7 +128,7 @@ private: friend class Thread; }; -#define anna_complete_runnable(Class) void do_action () throw () {;} +#define anna_complete_runnable(Class) void do_action () {;} } //namespace anna