Beispiel #1
0
        /// <summary>
        /// Add execution group.
        /// </summary>
        /// <param name="exectionGroupCallback">Execution group callback.</param>
        /// <param name="lock">Lock.</param>
        /// <returns>Command manager.</returns>
        public IAsyncCommandManager AddGroup(Action <IAsyncCommandGroup> exectionGroupCallback, GroupLockBehavior @lock = GroupLockBehavior.LockAllGroups)
        {
            var executionGroup = new ExecutionGroup(
                commandManager: this,
                @lock: @lock);

            exectionGroupCallback(executionGroup);

            executionGroups.Add(executionGroup);
            return(this);
        }
Beispiel #2
0
 /// <summary>
 /// Constructor.
 /// </summary>
 public ExecutionGroup(AsyncCommandManager commandManager, GroupLockBehavior @lock)
 {
     this.commandManager = commandManager;
     Lock = @lock;
 }