master
go 16 lines 290 Bytes
Raw
1 // File descriptor counting via /proc/self/fd (linux) or lsof (darwin).
2 //go:build linux || darwin
3
4 package fd
5
6 import (
7 "golang.org/x/sys/unix"
8 )
9
10 func GetNumFDs() int {
11 var l unix.Rlimit
12 if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &l); err != nil {
13 return 0
14 }
15 return int(l.Cur)
16 }