|
0
|
| SRobertJames · 技术社区 · 2 年前 |
|
1
3
您的建议:
是 不 浮点运算。这需要:
但你说得对,没有必要。更好的做法是:
只要
当然,溢出仍然是可能的,但此表达式给出了
至关重要的是,重新排序使
如果72分钟还不够长,那么在采用更大的数据类型之前,您甚至可以考虑较低分辨率的延迟(例如整秒)(这将降低效率,并可能增加原子性问题)。长延迟很少需要毫秒精度,而且在任何情况下,您的时钟在这段时间内都可能不是毫秒精度的——即使是TCXO也通常精确到2ppm,500秒后可能会产生1ms的漂移。 |
|
2
1
简单地说,想想你能有多长的最大延迟。 如果使用32位无符号数(负数表示延迟不是很实用,因为我不知道如何使用负延迟,这会让我们回到过去)。最大uint32_t为4294967295,这对于一个多小时的延迟来说已经足够了。
如果您将计时器设置为每1/1000秒递增一次,则uint32_t将足以延迟
如果您需要更多,请在计算中使用较大的无符号整数:
|
|
3
0
|
|
|
Jason Steve · 实时gps reall需要数据库? 8 年前 |
|
|
Naveen Attri · Android实时位置共享 8 年前 |
|
|
Amin Ullah · EmguCv实时视频解码中的600毫秒延迟 8 年前 |
|
|
Laveena · 连续无限实时流式音频信号,Python 8 年前 |
|
|
Malerosa · 如何将数据库链接到我的Android应用程序? 8 年前 |