问题描述
我需要以可配置的间隔(每个设备)定期从可配置的设备中请求数据。所有设备都连接到共享数据总线,因此只有一个设备可以同时发送数据。
设备的内存很少,因此每个设备只能将数据保留一定的时间,然后再被下一个块覆盖。这意味着我需要确保在任何给定设备仍可用时向其请求数据,否则它将丢失。
我正在寻找一种算法,该算法在给定一系列设备及其各自的时序属性的情况下,找到可行的时间表以实现最小的数据丢失。
我想可以使用以下属性来正式描述每个设备:
data_interval
:下一个数据块变为可用所需的时间
max_request_interval
:两次请求之间不会造成数据丢失的最长时间
processing_time
:发送请求并完全接收包含所请求数据的相应响应所花费的时间
基本上,我需要确保在每台设备的数据准备就绪且尚未过期时向其请求数据,同时要牢记所有其他设备的截止日期。
是否存在某种针对此类问题的算法?我非常怀疑我是否是遇到这种情况的第一个人。在线搜索现有解决方案并没有产生很多有用的结果,主要是因为调度算法主要用于操作系统等,可以随意暂停和恢复调度的进程。但是,对于我来说,我无法做到这一点,因为请求和接收大块数据的过程是原子的,即只能完全执行或完全不能执行。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)