|
Evo C++ Library v0.5.1
|
Evo Input/Output streams with multithreading. More...
Go to the source code of this file.
Classes | |
| struct | ConsoleMT |
| Multithreaded console I/O. More... | |
| struct | StreamMT< T > |
| Stream with mutex for multithreaded synchronization. More... | |
| struct | StreamMT< File > |
| Stream with mutex for multithreaded synchronization, specialized for File. More... | |
Namespaces | |
| evo | |
| Evo C++ Library namespace. | |
Macros | |
| #define | EVO_CATCH_MT(CODE) |
| Catch Evo Exception and print thread-safe error message to stderr. More... | |
| #define | EVO_CONSOLE_MT static evo::ConsoleMT& c = evo::con_mt() |
| Shortcut to define a ConsoleMT for I/O. More... | |
| #define | EVO_IO_MT(STREAM, CODE) { Mutex::Lock evo_streamlock_(STREAM .mutex); STREAM.stream CODE; } |
| Lock mutex and run stream operation code. More... | |
| #define | INCL_evo_iothread_h |
Typedefs | |
| typedef StreamMT< File > | FileMT |
| File with mutex for synchonization – see File and StreamMT<File> More... | |
| typedef StreamMT< PipeIn > | PipeInMT |
| Input pipe with mutex for synchonization – see StreamMT. More... | |
| typedef StreamMT< PipeOut > | PipeOutMT |
| Output pipe with mutex for synchonization – see StreamMT. More... | |
Functions | |
| ConsoleMT & | con_mt () |
| Shortcut for ConsoleMT::get(). More... | |
Evo Input/Output streams with multithreading.
| #define EVO_CATCH_MT | ( | CODE | ) |
Catch Evo Exception and print thread-safe error message to stderr.
| CODE | Code to run if exception is caught, abort() to terminate process, use just a semi-colon for none |
| #define EVO_CONSOLE_MT static evo::ConsoleMT& c = evo::con_mt() |
Shortcut to define a ConsoleMT for I/O.
| #define EVO_IO_MT | ( | STREAM, | |
| CODE | |||
| ) | { Mutex::Lock evo_streamlock_(STREAM .mutex); STREAM.stream CODE; } |
Lock mutex and run stream operation code.
| STREAM | StreamMT or StreamExtMT object to use |
| CODE | Code to use on stream, this code goes right after the string object name, it may start with a dot (.) or operator like << |
| #define INCL_evo_iothread_h |
1.8.13