From c2dd019c1fddaeae412e2b6f44fb86ff0dc635d4 Mon Sep 17 00:00:00 2001
From: yeg <1347747024@qq.com>
Date: 星期三, 02 九月 2026 22:08:16 +0800
Subject: [PATCH] 实现主动轮询完整实时快照

---
 ruoyi-device/src/main/java/com/ruoyi/device/bts/BtsDevelopmentSimulator.java |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/ruoyi-device/src/main/java/com/ruoyi/device/bts/BtsDevelopmentSimulator.java b/ruoyi-device/src/main/java/com/ruoyi/device/bts/BtsDevelopmentSimulator.java
index cf28b98..281a531 100644
--- a/ruoyi-device/src/main/java/com/ruoyi/device/bts/BtsDevelopmentSimulator.java
+++ b/ruoyi-device/src/main/java/com/ruoyi/device/bts/BtsDevelopmentSimulator.java
@@ -413,6 +413,15 @@
         return List.copyOf(btsHistoryFor(btsKey(device, channelId)));
     }
 
+    /** 返回开发模拟器当前通道的持久化槽位间隔;仅供开发调度层使用。 */
+    public synchronized long persistenceIntervalMillis(int deviceId, int channelId)
+    {
+        DeviceState device = requireDevice(deviceId);
+        requireChannel(device, channelId);
+        BtsPlaybackState playback = playbackState(btsKey(device, channelId), Instant.now());
+        return Math.max(100L, 60000L / Math.max(1, playback.speedMultiplier()));
+    }
+
     /** 按实际出现的循环和工步汇总 record,不补齐缺失行。 */
     public synchronized List<BtsStepRecord> btsSteps(int deviceId, int channelId)
     {

--
Gitblit v1.7.1