Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
06/04/10 15:06:03 (14 years ago)
Author:
abeham
Message:

#866

  • Improved exception handling and added default client
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Problems.ExternalEvaluation/3.3/Drivers/EvaluationProcessChannel.cs

    r3872 r3895  
    9494
    9595    public override void Send(IMessage message) {
    96       streamingChannel.Send(message);
     96      try {
     97        streamingChannel.Send(message);
     98      } catch {
     99        Close();
     100        throw;
     101      }
    97102    }
    98103
    99104    public override IMessage Receive(IBuilder builder) {
    100       return streamingChannel.Receive(builder);
     105      try {
     106        return streamingChannel.Receive(builder);
     107      } catch {
     108        Close();
     109        throw;
     110      }
    101111    }
    102112
     
    107117          streamingChannel.Close();
    108118          if (!process.HasExited) {
    109             process.CloseMainWindow();
    110             process.WaitForExit(1000);
    111             process.Close();
    112             // for some reasons the event process_Exited does not fire
    113             OnProcessExited();
     119            try {
     120              process.CloseMainWindow();
     121              process.WaitForExit(1000);
     122              process.Close();
     123            } catch { }
    114124          }
     125          // for some reasons the event process_Exited does not fire
     126          OnProcessExited();
    115127        }
    116128        process = null;
Note: See TracChangeset for help on using the changeset viewer.