namespace GFramework.Core.Abstractions.command; /// /// 定义命令执行器接口,提供同步和异步方式发送并执行命令的方法。 /// public interface ICommandExecutor { /// /// 发送并执行一个命令。 /// /// 要执行的命令对象,实现 ICommand 接口。 public void Send(ICommand command); /// /// 发送并执行一个带返回值的命令。 /// /// 命令执行结果的类型。 /// 要执行的带返回值的命令对象,实现 ICommand<TResult> 接口。 /// 命令执行的结果,类型为 TResult。 public TResult Send(ICommand command); /// /// 发送并异步执行一个命令。 /// /// 要执行的命令对象,实现 IAsyncCommand 接口。 /// 表示异步操作的任务。 Task SendAsync(IAsyncCommand command); /// /// 发送并异步执行一个带返回值的命令。 /// /// 命令执行结果的类型。 /// 要执行的带返回值的命令对象,实现 IAsyncCommand<TResult> 接口。 /// 表示异步操作的任务,其结果为命令执行的结果,类型为 TResult。 Task SendAsync(IAsyncCommand command); }