1
zj
2024-10-29 57c2b6875b5f026a1432f3209471d6b4503f43fc
src/main/java/com/nq/utils/task/stock/StockTask.java
@@ -58,10 +58,14 @@
    private final Lock syncINStockDataLock = new ReentrantLock();
    private final AtomicBoolean syncUSStockData = new AtomicBoolean(false);
    private final Lock syncUSStockDataLock = new ReentrantLock();
    /**
     * 同步系统所需要的股票
     */
    @Scheduled(cron = "0 */1 * * * ?")
    @Scheduled(cron = "0 0/1 * * * ?")
    public void syncINStockData() {
        if (syncINStockData.get()) { // 判断任务是否在处理中
            return;
@@ -81,9 +85,20 @@
    /**
     * 同步美国股票
     */
//    @Scheduled(cron = "0 0/30 * * * ?")
    @Scheduled(cron = "0 0/1 * * * ?")
    public void loadStockCompanies() {
        loadAllCompanies();
        if (syncUSStockData.get()) { // 判断任务是否在处理中
            return;
        }
        if (syncUSStockDataLock.tryLock()) {
            try {
                syncUSStockData.set(true); // 设置处理中标识为true
                loadAllStock(EStockType.US);
            } finally {
                syncUSStockDataLock.unlock();
                syncUSStockData.set(false); // 设置处理中标识为false
            }
        }
    }