[This is preliminary documentation and is subject to change.]
C# |
public void ExecuteConcurrent( ExecutionResultHandler handler, Persistent target, IPersistateList targetCollection, params Object[] parameters )
- handler (ExecutionResultHandler)
- A delegate which is called with the ExecutionResult produced when the operation completes.
- target (Persistent)
- The target object to be passed to the Operation's Execute method.
- targetCollection (IPersistateList)
- The target collection to be passed to the Operation's Execute method.
- parameters (array<Object>[]()[][])
- Other parameters to be passed to the Operation's Execute method.
During the operation execution on the thread pool thread, ActiveSession is set to the same session as the calling thread. On the current thread, this method does not block. A handler delegate is called with the result of the operation once it completes.
Persistate allows you to execute more than one operation concurrently in a single Session. These can be nested executions in the same thread or asynchronous executions in different threads. However, be aware that Persistate consolidates all modifications for concurrent executions, so committing or rolling back one operation execution will also include all modifications made so far in all concurrent executions.