23 lines
374 B
Go
23 lines
374 B
Go
package core
|
|
|
|
import (
|
|
"os"
|
|
"syscall"
|
|
)
|
|
|
|
func RestartSelf() {
|
|
executable, err := os.Executable()
|
|
if err != nil {
|
|
panic("获取可执行文件路径失败: " + err.Error())
|
|
}
|
|
|
|
args := os.Args
|
|
env := os.Environ()
|
|
|
|
// 使用exec替换当前进程为新的进程
|
|
err = syscall.Exec(executable, args, env)
|
|
if err != nil {
|
|
panic("重启失败: " + err.Error())
|
|
}
|
|
}
|