MCPcopy Create free account
hub / github.com/containerd/cgroups / getTasks

Method getTasks

cgroup2/manager.go:528–552  ·  view source on GitHub ↗
(recursive bool, tType string)

Source from the content-addressed store, hash-verified

526}
527
528func (c *Manager) getTasks(recursive bool, tType string) ([]uint64, error) {
529 var tasks []uint64
530 err := filepath.Walk(c.path, func(p string, info fs.FileInfo, err error) error {
531 if err != nil {
532 return err
533 }
534 if !recursive && info.IsDir() {
535 if p == c.path {
536 return nil
537 }
538 return filepath.SkipDir
539 }
540 _, name := filepath.Split(p)
541 if name != tType {
542 return nil
543 }
544 curTasks, err := parseCgroupTasksFile(p)
545 if err != nil {
546 return err
547 }
548 tasks = append(tasks, curTasks...)
549 return nil
550 })
551 return tasks, err
552}
553
554func (c *Manager) Procs(recursive bool) ([]uint64, error) {
555 return c.getTasks(recursive, cgroupProcs)

Callers 2

ProcsMethod · 0.95
ThreadsMethod · 0.95

Calls 1

parseCgroupTasksFileFunction · 0.85

Tested by

no test coverage detected