首先我們來學習PID這個概念,PID全稱Process ID,是標識和區(qū)分進程的ID,它是一個全局唯一的正整數(shù)。
原來Hello World進程運行時也有一個PID,只是它運行結束后PID也釋放了,我們可以通過print_pid.go程序顯示當前進程的PID。
程序print_pid.go的源碼如下,通過Getpid()函數(shù)可以獲得當前進程的PID。
package main
import (
"fmt"
"os"
)
func main() {
fmt.Println(os.Getpid())
}
root@87096bf68cb2:/go/src# go run print_pid.go
2922
root@87096bf68cb2:/go/src# go run print_pid.go
2932
可以看出,進程運行時PID是由操作系統(tǒng)隨機分配的,同一個程序運行兩次會產(chǎn)生兩個進程,當然也就有兩個不同的PID。
那PID究竟有什么用呢?我們稍后會討論,現(xiàn)在先了解下PPID。