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 0 0/2  * * ?")
    @Scheduled(cron = "0 0/1 * * * ?")
    public void syncINStockData() {
        if (syncINStockData.get()) { // 判断任务是否在处理中
            return;
@@ -69,7 +73,7 @@
        if (syncINStockDataLock.tryLock()) {
            try {
                syncINStockData.set(true); // 设置处理中标识为true
                loadAllStock(EStockType.IN);
                loadAllStock(EStockType.JP);
            } finally {
                syncINStockDataLock.unlock();
                syncINStockData.set(false); // 设置处理中标识为false
@@ -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
            }
        }
    }
@@ -177,7 +192,7 @@
    /**
     * 强制平仓
     */
    @Scheduled(cron = "0/1 * * * * ?")
//    @Scheduled(cron = "0/1 * * * * ?")
    public void stockConstraint() {
        if (stockConstraint.get()) { // 判断任务是否在处理中
            return;