Free cookie consent management tool by TermsFeed Policy Generator

Changes between Initial Version and Version 1 of Ticket #2052


Ignore:
Timestamp:
05/14/13 13:49:29 (12 years ago)
Author:
sforsten
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #2052 – Description

    initial v1  
    11If CrossValidation is set as optimizer in a BatchRun, only the first run is executed. The BatchRun remains in the `ExecutionState.Started` and even if the `BatchRun` is stopped and prepared again, no additional run can be executed anymore.
    22
    3 The problem is that CrossValidation uses a lock in several methods, which are accessed through events by multiple cloned algorithms at the same time. The last algorithm which accesses `ClonedAlgorithm_Stopped` calls the method `OnStopped` informs `BatchRun' that `CrossValidation` has stopped. Therefore, `BatchRun` prepares and starts `CrossValidation` again, which leads to the call of `ClonedAlgorithm_Started` by the algorithms started by `CrossValidation`.
     3The problem is that CrossValidation uses a lock in several methods, which are accessed through events by multiple cloned algorithms at the same time. The last algorithm which accesses `ClonedAlgorithm_Stopped` calls the method `OnStopped` which informs `BatchRun` that `CrossValidation` has stopped. Therefore, `BatchRun` prepares and starts `CrossValidation` again, which leads to the call of `ClonedAlgorithm_Started` by the algorithms started by `CrossValidation`.
    44
    5 The lock used in `CrossValidation` is acquired in the method `ClonedAlgorithm_Stopped` and the call hierarchy leads through `BatchRun` to the method `ClonedAlgorithm_Started` where the lock needs to be required again. This leads to a deadlock.
     5The lock used in `CrossValidation` is acquired in the method `ClonedAlgorithm_Stopped` and the call hierarchy leads through `BatchRun` to the method `ClonedAlgorithm_Started` where the lock needs to be acquired again. This leads to a deadlock.