ts: multiple improvements mostly to timers
Multiple opportunities for performance gains where found improving ts-standalone
.
- Timers are now implemented as
Future
s forOneshot
s andStream
s forInterval
s. This is more consistent with how they supposed to be used and it keepsOneshot
s simpler. - "After" timers (the one that fire no sooner than the target instant) now use their own data structure in the reactor. We no longer need to use the
wait / 2
hack. They also use their own types & implementations. - Fixed
Interval
s which could fire several times in a row before the interval had elapsed. -
ts-standalone
push strategy and statistics were improved. This helped identify the incorrect behaviour for intervals. Fixing those required improving the statistics produced by the tool. - Other commits mostly improve CPU and memory usage a bit. See commit messages.
Edited by François Laignel