new: tap server tab net io view to switch type

This commit is contained in:
lollipopkit
2023-11-01 00:38:51 -06:00
parent a363e97dd4
commit 37e5c4d092
5 changed files with 109 additions and 53 deletions

View File

@@ -24,7 +24,7 @@ class Disk {
class DiskIO extends TimeSeq<DiskIOPiece> {
DiskIO(super.pre, super.now);
(String?, String?) getReadSpeed(String dev) {
(double?, double?) _getSpeed(String dev) {
final pres = this.pre.where(
(element) => element.dev == dev.replaceFirst('/dev/', ''),
);
@@ -37,11 +37,31 @@ class DiskIO extends TimeSeq<DiskIOPiece> {
final sectorsRead = now.sectorsRead - pre.sectorsRead;
final sectorsWrite = now.sectorsWrite - pre.sectorsWrite;
final time = now.time - pre.time;
final read = '${(sectorsRead / time * 512).convertBytes}/s';
final write = '${(sectorsWrite / time * 512).convertBytes}/s';
final read = (sectorsRead / time * 512);
final write = (sectorsWrite / time * 512);
return (read, write);
}
(String?, String?) getSpeed(String dev) {
final (read_, write_) = _getSpeed(dev);
final read = '${read_?.convertBytes}/s';
final write = '${write_?.convertBytes}/s';
return (read, write);
}
(String?, String?) getAllSpeed() {
if (pre.isEmpty || now.isEmpty) return (null, null);
var (read, write) = (0.0, 0.0);
for (var pre in pre) {
final (read_, write_) = _getSpeed(pre.dev);
read += read_ ?? 0;
write += write_ ?? 0;
}
final readStr = '${read.convertBytes}/s';
final writeStr = '${write.convertBytes}/s';
return (readStr, writeStr);
}
// Raw:
// 254 0 vda 584193 186416 40419294 845790 5024458 2028159 92899586 6997559 0 5728372 8143590 0 0 0 0 2006112 300240
// 254 1 vda1 584029 186416 40412734 845668 5024453 2028159 92899586 6997558 0 5728264 7843226 0 0 0 0 0 0