advance version complete
This commit is contained in:
80
test/test.go
80
test/test.go
@@ -1,52 +1,38 @@
|
||||
// package main
|
||||
|
||||
// import (
|
||||
// "log"
|
||||
// "time"
|
||||
|
||||
// message "client/internal/msg"
|
||||
// "client/internal/src/linux"
|
||||
// )
|
||||
|
||||
// func main() {
|
||||
// auth := "lzx"
|
||||
// l := linux.NewLinuxClient(auth)
|
||||
// go func() {
|
||||
// gpus, err := l.GetGPUInfo()
|
||||
// if err != nil {
|
||||
// log.Fatalf("获取GPU信息失败:%v", err)
|
||||
// return
|
||||
// }
|
||||
// log.Println(gpus)
|
||||
// }()
|
||||
// now_ts := time.Now().Unix()
|
||||
// cfg := message.ConfigurationMiningMsg{
|
||||
// Coin: "NEXA",
|
||||
// Algo: "NexaPow",
|
||||
// Pool: "m2pool",
|
||||
// PoolUrl: "47.108.221.51:3333",
|
||||
// WalletAddress: "m2test",
|
||||
// PoolUser: "m2test",
|
||||
// WorkerID: "go",
|
||||
// EndTimestamp: uint64(now_ts + 600),
|
||||
// }
|
||||
// if err := l.Mining(cfg); err != nil {
|
||||
// log.Fatalf("配置挖矿失败: %v", err)
|
||||
// }
|
||||
|
||||
// endTime := time.Unix(int64(cfg.EndTimestamp), 0)
|
||||
// waitDuration := time.Until(endTime)
|
||||
// if waitDuration < 0 {
|
||||
// waitDuration = 0
|
||||
// }
|
||||
// // 等待挖矿任务自然结束,额外多等 5 秒确保清理完成
|
||||
// time.Sleep(waitDuration + 5*time.Second)
|
||||
// }
|
||||
|
||||
package main
|
||||
|
||||
import client "client/internal"
|
||||
import (
|
||||
client "client/internal"
|
||||
"client/internal/updater"
|
||||
"log"
|
||||
"os"
|
||||
"os/signal"
|
||||
"syscall"
|
||||
)
|
||||
|
||||
const VERSION string = "version advanced"
|
||||
const PROXY_URL string = "47.108.221.51:23456" // 服务地址
|
||||
const REMOTE_UPDATE_URL = "http://127.0.0.1:23333/update" // 远程更新服务器地址
|
||||
|
||||
func main() {
|
||||
client.Star()
|
||||
// 启动前检查更新
|
||||
log.Println("检查更新...")
|
||||
needRestart, err := updater.CheckAndUpdate(REMOTE_UPDATE_URL, VERSION)
|
||||
if err != nil {
|
||||
log.Printf("更新检查失败,继续运行当前版本:%v", err)
|
||||
} else if needRestart {
|
||||
log.Println("更新完成!请重启程序以使用新版本。")
|
||||
os.Exit(0)
|
||||
}
|
||||
|
||||
// 在单独的 goroutine 中启动客户端逻辑
|
||||
go client.Star(PROXY_URL)
|
||||
|
||||
// 监听系统信号,实现优雅退出
|
||||
sigCh := make(chan os.Signal, 1)
|
||||
signal.Notify(sigCh, os.Interrupt, syscall.SIGTERM)
|
||||
|
||||
sig := <-sigCh
|
||||
log.Printf("收到退出信号: %v,客户端准备退出...", sig)
|
||||
// 停止客户端(包括持续挖矿)
|
||||
client.StopClient()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user