Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
03/28/10 04:11:23 (14 years ago)
Author:
swagner
Message:

Implemented first version of algorithm batch processing (#947).

Location:
trunk/sources/HeuristicLab.Core/3.3
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Core/3.3/Engine.cs

    r3017 r3226  
    7575    public bool Running {
    7676      get { return running; }
     77      private set {
     78        if (running != value) {
     79          running = value;
     80          OnRunningChanged();
     81        }
     82      }
    7783    }
    7884
     
    126132
    127133    public void Prepare(IOperation initialOperation) {
    128       Canceled = false;
    129       running = false;
    130134      ExecutionTime = new TimeSpan();
    131135      executionStack.Clear();
     
    138142    /// of class <see cref="ThreadPool"/>.</remarks>
    139143    public void Start() {
    140       running = true;
     144      Running = true;
    141145      Canceled = false;
    142146      ThreadPool.QueueUserWorkItem(new WaitCallback(Run), null);
     
    146150    /// of class <see cref="ThreadPool"/>.</remarks>
    147151    public void Step() {
    148       running = true;
     152      Running = true;
    149153      Canceled = false;
    150154      ThreadPool.QueueUserWorkItem(new WaitCallback(RunStep), null);
     
    167171      }
    168172      ExecutionTime += DateTime.Now - start;
    169       running = false;
    170173      OnStopped();
    171174    }
     
    176179        ProcessNextOperator();
    177180      ExecutionTime += DateTime.Now - start;
    178       running = false;
    179181      OnStopped();
    180182    }
     
    197199    }
    198200    /// <summary>
     201    /// Occurs when the running flag changed.
     202    /// </summary>
     203    public event EventHandler RunningChanged;
     204    /// <summary>
     205    /// Fires a new <c>RunningChanged</c> event.
     206    /// </summary>
     207    protected virtual void OnRunningChanged() {
     208      if (RunningChanged != null)
     209        RunningChanged(this, EventArgs.Empty);
     210    }
     211    /// <summary>
    199212    /// Occurs when the execution is prepared for a new run.
    200213    /// </summary>
     
    228241      if (Stopped != null)
    229242        Stopped(this, EventArgs.Empty);
     243      Canceled = false;
     244      Running = false;
    230245    }
    231246    protected virtual void OnCanceledChanged() { }
  • trunk/sources/HeuristicLab.Core/3.3/Interfaces/IEngine.cs

    r2916 r3226  
    6666    event EventHandler ExecutionTimeChanged;
    6767    /// <summary>
     68    /// Occurs when the running flag was changed.
     69    /// </summary>
     70    event EventHandler RunningChanged;
     71    /// <summary>
    6872    /// Occurs when the engine is prepared for a new run.
    6973    /// </summary>
Note: See TracChangeset for help on using the changeset viewer.