The C++ framework for developing highly scalable, high performance servers on Windows platforms.

[Programming Concepts]

Collaboration diagram for Exceptions:

Detailed Description

Most of this code uses exceptions for the reporting of errors. Most functions validate their input and throw exceptions on bad input. Most fuctions throw exceptions if there are errors that they can't handle. There are a surprisingly small number of exception classes used, this is by design. Usually there isn't a great deal that the calling code will want to do that depends on why the code failed, if there's that kind of choice available then the code that's being called usually exposes that choice. This means that if an exception occurs it's often not caught by anything except the final exception handler in the system, the one that lives at process or thread boundaries and, generally, pretty much all that will do is log the failure. This is all by design and all works well for writing reliable code. See here, here, here and here for more details.

This section contains links to the code that implements this concept.


class  CErrorCodeException
 A simple exception class. More...
class  CException
 A simple exception class. More...
class  CSocketClosedException
 An exception that can be thrown if you attempt an operation on a socket that is closed. More...
class  CSEHException
class  CSEHException::Translator
 A class that acts as a structured exception translator. Create one of these objects on each thread where you want Win32 structured exceptions translated into CSEHException. More...
class  CWin32Exception
 A simple exception class to replace Win32 error returns. More...

Generated on Sun Sep 12 19:06:48 2021 for The Server Framework - v7.4 by doxygen 1.5.3