package com.yami.trading.huobi.data.job; import java.util.concurrent.ConcurrentLinkedQueue; import lombok.extern.slf4j.Slf4j; import org.springframework.util.Assert; import com.yami.trading.bean.data.domain.Realtime; @Slf4j public class RealtimeQueue { private static ConcurrentLinkedQueue WORKING_EVENTS = new ConcurrentLinkedQueue<>(); public static void add(Realtime item) { Assert.notNull(item, "The item must not be null."); try { WORKING_EVENTS.add(item); } catch (Throwable e) { log.error("RealtimeQueue add fail -> {}", e.getMessage()); } } public static int size() { return WORKING_EVENTS.size(); } public static Realtime poll() { Realtime item = null; try { item = WORKING_EVENTS.poll(); } catch (Throwable e) { log.error("RealtimeQueue poll() fail -> {}", e.getMessage()); } return item; } }