加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
rlimit_linux.go 908 Bytes
一键复制 编辑 原始数据 按行查看 历史
luoyaoming 提交于 2022-12-30 11:21 . merge upstream 1.1.0
package main
import (
"fmt"
"golang.org/x/sys/unix"
)
var rlimitMap = map[string]int{
"RLIMIT_CPU": unix.RLIMIT_CPU,
"RLIMIT_FSIZE": unix.RLIMIT_FSIZE,
"RLIMIT_DATA": unix.RLIMIT_DATA,
"RLIMIT_STACK": unix.RLIMIT_STACK,
"RLIMIT_CORE": unix.RLIMIT_CORE,
"RLIMIT_RSS": unix.RLIMIT_RSS,
"RLIMIT_NPROC": unix.RLIMIT_NPROC,
"RLIMIT_NOFILE": unix.RLIMIT_NOFILE,
"RLIMIT_MEMLOCK": unix.RLIMIT_MEMLOCK,
"RLIMIT_AS": unix.RLIMIT_AS,
"RLIMIT_LOCKS": unix.RLIMIT_LOCKS,
"RLIMIT_SIGPENDING": unix.RLIMIT_SIGPENDING,
"RLIMIT_MSGQUEUE": unix.RLIMIT_MSGQUEUE,
"RLIMIT_NICE": unix.RLIMIT_NICE,
"RLIMIT_RTPRIO": unix.RLIMIT_RTPRIO,
"RLIMIT_RTTIME": unix.RLIMIT_RTTIME,
}
func strToRlimit(key string) (int, error) {
rl, ok := rlimitMap[key]
if !ok {
return 0, fmt.Errorf("wrong rlimit value: %s", key)
}
return rl, nil
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化