Package org.apache.storm.policy
Interface IWaitStrategy
- All Known Implementing Classes:
WaitStrategyPark
,WaitStrategyProgressive
public interface IWaitStrategy
-
Nested Class Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic IWaitStrategy
createBackPressureWaitStrategy
(Map<String, Object> topologyConf) int
idle
(int idleCounter) Implementations of this method should be thread-safe (preferably no side-effects and lock-free).void
prepare
(Map<String, Object> conf, IWaitStrategy.WaitSituation waitSituation)
-
Method Details
-
createBackPressureWaitStrategy
-
prepare
-
idle
Implementations of this method should be thread-safe (preferably no side-effects and lock-free).Supports static or dynamic backoff. Dynamic backoff relies on idleCounter to estimate how long caller has been idling.
int idleCounter = 0; int consumeCount = consumeFromQ(); while (consumeCount==0) { idleCounter = strategy.idle(idleCounter); consumeCount = consumeFromQ(); }
- Parameters:
idleCounter
- managed by the idle method until reset- Returns:
- new counter value to be used on subsequent idle cycle
- Throws:
InterruptedException
-