ParallelCmd class
A command that executes multiple commands in parallel through the Program's command execution system.
Unlike Cmd.batch, which executes commands directly and waits for all to
complete before returning messages, ParallelCmd delegates each command
to Program._executeCommand, allowing special commands like EveryCmd
and StreamCmd to be properly started.
Use this when you need to start both regular commands and special commands (like timers or streams) in parallel:
@override
Cmd? init() {
return ParallelCmd([
// This EveryCmd will be properly started by Program
EveryCmd(interval: fps, callback: (t) => TickMsg(t)),
// This regular command runs alongside
Cmd.perform(fetchData, onSuccess: DataMsg.new, onError: ErrorMsg.new),
]);
}
- Inheritance
- Available extensions
Constructors
-
ParallelCmd(List<
Cmd> commands)
Properties
-
commands
→ List<
Cmd> -
The commands to execute in parallel.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- isActive → bool
-
Available on Cmd?, provided by the CmdExtension extension
Returns true if this command is non-null and not a no-op.no setter - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
execute(
) → Future< Msg?> -
Executes the command and returns the resulting message (if any).
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
orNone(
) → Cmd -
Available on Cmd?, provided by the CmdExtension extension
Returns the command or Cmd.none() if null. -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited