using Microsoft.Extensions.DependencyInjection;
namespace CoreAgent.Domain.Interfaces.Common;
///
/// 服务作用域管理器接口
/// 用于在单例服务中创建瞬时服务
///
public interface IServiceScopeManager
{
///
/// 在作用域中执行操作
///
/// 返回类型
/// 要执行的操作
/// 操作结果
Task ExecuteInScopeAsync(Func> operation);
///
/// 在作用域中执行操作(无返回值)
///
/// 要执行的操作
/// 任务
Task ExecuteInScopeAsync(Func operation);
///
/// 在作用域中执行操作(同步)
///
/// 返回类型
/// 要执行的操作
/// 操作结果
T ExecuteInScope(Func operation);
///
/// 在作用域中执行操作(同步,无返回值)
///
/// 要执行的操作
void ExecuteInScope(Action operation);
}