Major update:

- Logging
  - Created LogCore Class
  - Updated LogCore to use file descriptors instead of stdout
  - Add Log object reference to constructors for:
    FunctionCore, SelectCore
  - Use extern Log() object in SignalCore
- SelectableCore
  - Added new connection type: ForkedPipe
    Create pipe, fork process, connect pipe out to child stdin, exec
This commit is contained in:
Charl Wentzel
2016-08-22 12:14:53 +02:00
parent eaace97ec9
commit 5ea05d119e
10 changed files with 366 additions and 125 deletions

View File

@@ -20,6 +20,7 @@
//---------------------------------------------------------------------------
// Global vars
extern CLogCore * Log;
extern char ProcessName[];
// Termination Vars
@@ -87,12 +88,13 @@ void SignalTerminate( int sig )
std::cerr << "\r\n" << ProcessName << ": ***********************************\n";
// Create Log Entry
LogMessage( dlNone, dlNone, "%s: ** %s signal received [%d] **", ProcessName, SigName, TermCount );
if (TermCount < MaxTermCount)
LogMessage( dlNone, dlNone, "%s: ** Terminating normally... **", ProcessName );
else
LogMessage( dlNone, dlNone, "%s: ** Terminating immediately! **", ProcessName );
if (Log) Log->Message( dlNone, dlNone, "%s: ** %s signal received [%d] **", ProcessName, SigName, TermCount );
if (TermCount < MaxTermCount) {
if (Log) Log->Message( dlNone, dlNone, "%s: ** Terminating normally... **", ProcessName );
}
else {
if (Log) Log->Message( dlNone, dlNone, "%s: ** Terminating immediately! **", ProcessName );
}
std::cerr << ProcessName << ": ***********************************\n\n";
if (TermCount >= MaxTermCount)
@@ -121,8 +123,8 @@ void SignalAbort( int sig )
std::cerr << "\n" << ProcessName << ": ********************************\n";
// Create Log Entry - but don't post
LogMessage( dlNone, dlNone, "%s: ** %s signal received **", ProcessName, SigName );
LogMessage( dlNone, dlNone, "%s: ** Terminating immediately! **", ProcessName );
if (Log) Log->Message( dlNone, dlNone, "%s: ** %s signal received **", ProcessName, SigName );
if (Log) Log->Message( dlNone, dlNone, "%s: ** Terminating immediately! **", ProcessName );
std::cerr << ProcessName << ": ********************************\n\n";