From b9e66ce79adfdf5f2690ef5d4399f61729abe625 Mon Sep 17 00:00:00 2001 From: mii443 Date: Thu, 17 Oct 2024 08:46:24 +0000 Subject: [PATCH] add add_threads --- src/cgroup/cgroup.rs | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/src/cgroup/cgroup.rs b/src/cgroup/cgroup.rs index 2721705..f7c3440 100644 --- a/src/cgroup/cgroup.rs +++ b/src/cgroup/cgroup.rs @@ -146,15 +146,11 @@ impl CGroup { } pub fn add_procs(&self, procs: Vec) -> Result<(), std::io::Error> { - let to_write = procs - .iter() - .map(|proc| proc.to_string()) - .collect::>() - .join("\n"); + self.write_list("cgroup.procs", procs) + } - self.write("cgroup.procs", &to_write)?; - - Ok(()) + pub fn add_threads(&self, threads: Vec) -> Result<(), std::io::Error> { + self.write_list("cgroup.threads", threads) } fn write_value(&self, name: &str, value: T) -> Result<(), std::io::Error> @@ -165,6 +161,21 @@ impl CGroup { Ok(()) } + fn write_list(&self, name: &str, value: Vec) -> Result<(), std::io::Error> + where + T: fmt::Display, + { + let to_write = value + .iter() + .map(|v| v.to_string()) + .collect::>() + .join("\n"); + + self.write(name, &to_write)?; + + Ok(()) + } + fn get_u32_list(&self, name: &str) -> Result, std::io::Error> { let procs = self .read(name)?