Top: supports sorting by start-time

This commit is contained in:
李通洲
2026-08-31 19:47:14 +08:00
parent b9e4d04d65
commit 6eef800ea2
4 changed files with 15 additions and 3 deletions
+1
View File
@@ -8,6 +8,7 @@ typedef enum FFTopTypes: uint8_t {
FF_TOP_TYPE_MEMORY = 1 << 1,
FF_TOP_TYPE_DISK_READ = 1 << 2,
FF_TOP_TYPE_DISK_WRITE = 1 << 3,
FF_TOP_TYPE_START_TIME = 1 << 4,
FF_TOP_TYPE_DISK = FF_TOP_TYPE_DISK_READ | FF_TOP_TYPE_DISK_WRITE,
} FFTopTypes;
+3
View File
@@ -101,6 +101,7 @@ void ffParseTopJsonObject(FFTopOptions* options, yyjson_val* module) {
{ "memory", FF_TOP_TYPE_MEMORY },
{ "disk-read", FF_TOP_TYPE_DISK_READ },
{ "disk-write", FF_TOP_TYPE_DISK_WRITE },
{ "start-time", FF_TOP_TYPE_START_TIME },
{},
});
if (error) {
@@ -183,6 +184,8 @@ void ffGenerateTopJsonConfig(FFTopOptions* options, yyjson_mut_doc* doc, yyjson_
yyjson_mut_obj_add_str(doc, module, "sort", "disk-read");
} else if (options->sort == FF_TOP_TYPE_DISK_WRITE) {
yyjson_mut_obj_add_str(doc, module, "sort", "disk-write");
} else if (options->sort == FF_TOP_TYPE_START_TIME) {
yyjson_mut_obj_add_str(doc, module, "sort", "start-time");
}
yyjson_mut_obj_add_uint(doc, module, "processes", options->nProcesses);
yyjson_mut_obj_add_uint(doc, module, "waitTime", options->waitTime);