mirror of
				https://github.com/TeaOSLab/EdgeNode.git
				synced 2025-11-04 07:40:56 +08:00 
			
		
		
		
	优化代码
This commit is contained in:
		@@ -2,7 +2,10 @@
 | 
			
		||||
 | 
			
		||||
package teaconst
 | 
			
		||||
 | 
			
		||||
import "github.com/TeaOSLab/EdgeCommon/pkg/nodeconfigs"
 | 
			
		||||
import (
 | 
			
		||||
	"github.com/TeaOSLab/EdgeCommon/pkg/nodeconfigs"
 | 
			
		||||
	"os"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	// 流量统计
 | 
			
		||||
@@ -12,7 +15,7 @@ var (
 | 
			
		||||
 | 
			
		||||
	NodeId       int64 = 0
 | 
			
		||||
	NodeIdString       = ""
 | 
			
		||||
	IsDaemon           = false
 | 
			
		||||
	IsDaemon           = len(os.Args) > 1 && os.Args[1] == "daemon"
 | 
			
		||||
 | 
			
		||||
	GlobalProductName = nodeconfigs.DefaultProductName
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -3,6 +3,7 @@
 | 
			
		||||
package goman
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	teaconst "github.com/TeaOSLab/EdgeNode/internal/const"
 | 
			
		||||
	"runtime"
 | 
			
		||||
	"sync"
 | 
			
		||||
	"time"
 | 
			
		||||
@@ -14,6 +15,10 @@ var instanceId = uint64(0)
 | 
			
		||||
 | 
			
		||||
// New 新创建goroutine
 | 
			
		||||
func New(f func()) {
 | 
			
		||||
	if teaconst.IsDaemon {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	_, file, line, _ := runtime.Caller(1)
 | 
			
		||||
 | 
			
		||||
	go func() {
 | 
			
		||||
@@ -42,6 +47,10 @@ func New(f func()) {
 | 
			
		||||
 | 
			
		||||
// NewWithArgs 创建带有参数的goroutine
 | 
			
		||||
func NewWithArgs(f func(args ...interface{}), args ...interface{}) {
 | 
			
		||||
	if teaconst.IsDaemon {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	_, file, line, _ := runtime.Caller(1)
 | 
			
		||||
 | 
			
		||||
	go func() {
 | 
			
		||||
 
 | 
			
		||||
@@ -228,12 +228,17 @@ func (this *Node) Daemon() {
 | 
			
		||||
				_ = os.Setenv("EdgeBackground", "on")
 | 
			
		||||
 | 
			
		||||
				var cmd = exec.Command(exe)
 | 
			
		||||
				var buf = &bytes.Buffer{}
 | 
			
		||||
				cmd.Stderr = buf
 | 
			
		||||
				err = cmd.Start()
 | 
			
		||||
				if err != nil {
 | 
			
		||||
					return err
 | 
			
		||||
				}
 | 
			
		||||
				err = cmd.Wait()
 | 
			
		||||
				if err != nil {
 | 
			
		||||
					if isDebug {
 | 
			
		||||
						log.Println("[DAEMON]" + buf.String())
 | 
			
		||||
					}
 | 
			
		||||
					return err
 | 
			
		||||
				}
 | 
			
		||||
				return nil
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user