當前位置: 首頁>>代碼示例>>Golang>>正文


Golang Process.Release方法代碼示例

本文整理匯總了Golang中os.Process.Release方法的典型用法代碼示例。如果您正苦於以下問題:Golang Process.Release方法的具體用法?Golang Process.Release怎麽用?Golang Process.Release使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在os.Process的用法示例。


在下文中一共展示了Process.Release方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: stopServer

func stopServer(proc *os.Process) {
	err := proc.Kill()
	if err != nil {
		panic(err.Error())
	}
	proc.Release()
}
開發者ID:joshuaconner,項目名稱:etcd,代碼行數:7,代碼來源:etcd_tls_test.go

示例2: startDaemon

func startDaemon() error {
	var proc *os.Process

	dir, err := os.Getwd()
	if err != nil {
		return err
	}
	procattr := os.ProcAttr{Dir: dir, Env: os.Environ(), Files: []*os.File{nil, nil, nil}}
	proc, err = os.StartProcess("helloworld.exe", nil, &procattr)
	if err != nil {
		return err
	}
	return proc.Release()
}
開發者ID:hwch,項目名稱:go-dev,代碼行數:14,代碼來源:daemon.go

示例3: KillWithChildren

// KillWithChildren kills the process
// and tries to kill its all children (process group)
func KillWithChildren(p *os.Process, interrupt bool) (err error) {
	Log.Debug("killWithChildren", "process", p)
	if p == nil {
		return
	}
	Log.Info("killWithChildren", "pid", p.Pid, "interrupt", interrupt)
	defer func() {
		if r := recover(); r != nil {
			Log.Warn("PANIC in kill", "process", p, "error", r)
		}
	}()
	defer p.Release()
	if p.Pid == 0 {
		return nil
	}
	if interrupt {
		defer p.Signal(os.Interrupt)
		return Pkill(p.Pid, os.Interrupt)
	}
	defer p.Kill()
	return Pkill(p.Pid, os.Kill)
}
開發者ID:xingskycn,項目名稱:go,代碼行數:24,代碼來源:procutils.go


注:本文中的os.Process.Release方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。