public IdleStrategy create()

in gflog-core/src/main/java/com/epam/deltix/gflog/core/idle/IdleStrategyFactory.java [63:79]


    public IdleStrategy create() {
        if (!hasMaxYields() && !hasMinParkPeriod() && !hasMaxParkPeriod()) {
            return new BusySpinIdleStrategy();
        }

        if (!hasMaxSpins() && hasMaxYields() && !hasMinParkPeriod() && !hasMaxParkPeriod()) {
            return new YieldingIdleStrategy();
        }

        if (!hasMaxSpins() && !hasMaxYields() && hasMinParkPeriod()) {
            if (!hasMaxParkPeriod() || minParkPeriod == maxParkPeriod) {
                return new SleepingIdleStrategy(minParkPeriod);
            }
        }

        return new BackoffIdleStrategy(maxSpins, maxYields, minParkPeriod, maxParkPeriod);
    }