expires events that fall out of the window every expire_events_threshold so that the window does not grow too big . concode_field_sep WindowLifecycleListener<T> windowLifecycleListener concode_elem_sep TriggerPolicy<T> triggerPolicy concode_elem_sep ReentrantLock lock concode_elem_sep int EXPIRE_EVENTS_THRESHOLD concode_elem_sep Set<Event<T>> prevWindowEvents concode_elem_sep AtomicInteger eventsSinceLastExpiry concode_elem_sep Logger LOG concode_elem_sep ConcurrentLinkedQueue<Event<T>> queue concode_elem_sep List<T> expiredEvents concode_elem_sep EvictionPolicy<T> evictionPolicy concode_field_sep void add concode_elem_sep void add concode_elem_sep void add concode_elem_sep boolean onTrigger concode_elem_sep long getEarliestEventTs concode_elem_sep List<Event<T>> scanEvents concode_elem_sep void setTriggerPolicy concode_elem_sep String toString concode_elem_sep int getEventCount concode_elem_sep void track concode_elem_sep List<Long> getSlidingCountTimestamps concode_elem_sep void shutdown concode_elem_sep void setEvictionPolicy
void function ( ) { if ( eventsSinceLastExpiry . incrementAndGet ( ) >= EXPIRE_EVENTS_THRESHOLD ) { scanEvents ( false ) ; } }