mirror of
https://github.com/httprunner/httprunner.git
synced 2026-05-21 16:23:16 +08:00
fix: skip set ulimit on windows
This commit is contained in:
32
internal/boomer/ulimit.go
Normal file
32
internal/boomer/ulimit.go
Normal file
@@ -0,0 +1,32 @@
|
||||
// +build !windows
|
||||
|
||||
package boomer
|
||||
|
||||
import (
|
||||
"syscall"
|
||||
|
||||
"github.com/rs/zerolog/log"
|
||||
)
|
||||
|
||||
// set resource limit
|
||||
// ulimit -n 10240
|
||||
func SetUlimit(limit uint64) {
|
||||
var rLimit syscall.Rlimit
|
||||
err := syscall.Getrlimit(syscall.RLIMIT_NOFILE, &rLimit)
|
||||
if err != nil {
|
||||
log.Error().Err(err).Msg("get ulimit failed")
|
||||
return
|
||||
}
|
||||
log.Info().Uint64("limit", rLimit.Cur).Msg("get current ulimit")
|
||||
if rLimit.Cur >= limit {
|
||||
return
|
||||
}
|
||||
|
||||
rLimit.Cur = limit
|
||||
log.Info().Uint64("limit", rLimit.Cur).Msg("set current ulimit")
|
||||
err = syscall.Setrlimit(syscall.RLIMIT_NOFILE, &rLimit)
|
||||
if err != nil {
|
||||
log.Error().Err(err).Msg("set ulimit failed")
|
||||
return
|
||||
}
|
||||
}
|
||||
12
internal/boomer/ulimit_windows.go
Normal file
12
internal/boomer/ulimit_windows.go
Normal file
@@ -0,0 +1,12 @@
|
||||
// +build windows
|
||||
|
||||
package boomer
|
||||
|
||||
import (
|
||||
"github.com/rs/zerolog/log"
|
||||
)
|
||||
|
||||
// set resource limit
|
||||
func SetUlimit(limit uint64) {
|
||||
log.Warn().Msg("windows does not support setting ulimit")
|
||||
}
|
||||
Reference in New Issue
Block a user