General IRI utilities
Public Member Functions
CThreadException Class Reference

Thread exception class. More...

#include <threadexceptions.h>

Inheritance diagram for CThreadException:
Inheritance graph
[legend]
Collaboration diagram for CThreadException:
Collaboration graph
[legend]

Public Member Functions

 CThreadException (const std::string &where, const std::string &error_msg, const std::string &thread_id)
 Constructor. More...
 
- Public Member Functions inherited from CException
 CException (const std::string &where, const std::string &error_msg)
 Class constructor. More...
 
virtual const std::string & what (void)
 Function to get the error message. More...
 
virtual ~CException () throw ()
 Class destructor. More...
 

Additional Inherited Members

- Protected Attributes inherited from CException
std::string error_msg
 Exception error message. More...
 

Detailed Description

This class implements the exceptions for the CThread class. In addition to the basic error message provided by the base class CException, this exception class provides also the unique identifier of the thread that generated the exception.

Also, similarly to other exception classes, it appends a class identifer string ("[CThread class] - ") to the error message in order to identify the class that generated the exception.

The base class can be used to catch any exception thrown by the application or also, this class can be used in order to catch only exceptions generated by CThread objects.

Examples:
test_threads.cpp, and test_threadserver.cpp.

Definition at line 42 of file threadexceptions.h.

Constructor & Destructor Documentation

CThreadException::CThreadException ( const std::string &  where,
const std::string &  error_msg,
const std::string &  thread_id 
)

The constructor calls the base class constructor to add the general exception identifier and then adds the class identifier string "[CThread class]" and the supplied error message.

It also appends the unique identifier of the thread that generated the exception. So, the total exception message will look like this:

* [Exception caught] - <where>
* [CThread class] - <error message> - <thread id>
* 
Parameters
wherea null terminated string with the information about the name of the function, the source code filename and the line where the exception was generated. This string must be generated by the HERE macro.
error_msga null terminated string that contains the error message. This string may have any valid character and there is no limit on its length.
thread_ida null terminated string that contains the thread unique identifier. This string must be the one used to access the corresponding thread.

Definition at line 26 of file threadexceptions.cpp.

References CException::error_msg.


The documentation for this class was generated from the following files: