TaskExecutionSettings.cs 1 KB
namespace Rcs.Domain.Settings;

/// <summary>
/// 任务执行阶段排序与饥饿保护配置
/// </summary>
public class TaskExecutionSettings
{
    /// <summary>
    /// 是否启用综合候选选择策略。
    /// 关闭时沿用历史排序逻辑。
    /// </summary>
    public bool EnableCompositeSelection { get; set; }

    /// <summary>
    /// t1 同优先级候选的不重合路径代价阈值(米)。
    /// </summary>
    public double EqualPriorityNonOverlapThreshold { get; set; } = 100d;

    /// <summary>
    /// t1 低优先级候选的不重合路径代价阈值(米)。
    /// </summary>
    public double LowerPriorityNonOverlapThreshold { get; set; } = 20d;

    /// <summary>
    /// 是否启用连续替换饥饿保护。
    /// </summary>
    public bool EnableStarvationGuard { get; set; } = true;

    /// <summary>
    /// 同一任务被连续替换次数达到阈值后,下轮强制执行。
    /// </summary>
    public int StarvationGuardMaxDefers { get; set; } = 3;
}