disable win sleep

This commit is contained in:
YouROK
2021-09-06 08:52:26 +03:00
parent afa4a3d303
commit 6d499aa655

View File

@@ -1,7 +1,28 @@
//go:build windows
// +build windows
package main
func Preconfig(kill bool) {
import (
"time"
)
const (
EsSystemRequired = 0x00000001
EsContinuous = 0x80000000
)
var pulseTime = 1 * time.Minute
func Preconfig(kill bool) {
// don't sleep/hibernate windows
kernel32 := syscall.NewLazyDLL("kernel32.dll")
setThreadExecStateProc := kernel32.NewProc("SetThreadExecutionState")
pulse := time.NewTicker(pulseTime)
for {
select {
case <-pulse.C:
setThreadExecStateProc.Call(uintptr(EsSystemRequired))
}
}
}