进程类

package
v0.0.0-...-058f7b3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 1, 2024 License: MIT Imports: 32 Imported by: 0

Documentation

Overview

gproc 包实现了对进程的管理和通信功能。 md5:2bdecc6699345c91

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func X发送数据

func X发送数据(进程ID int, 数据 []byte, 可选组 ...string) error

X发送数据 向给定pid的指定进程发送数据。 md5:32fd0c7aeb3b969c

func X取启动时间

func X取启动时间() time.Time

X取启动时间 返回当前进程的启动时间。 md5:322d4b9a3dae1290

func X取已启动时长

func X取已启动时长() time.Duration

X取已启动时长 返回当前进程已经运行的持续时间. md5:105744cf83fdec5c

func X取父进程ID

func X取父进程ID() int

X取父进程ID 返回当前进程的系统父进程ID。 请注意,X取父进程ID与PPid函数的区别在于,X取父进程ID返回系统的父进程ID,而如果存在自定义父进程ID,PPid函数可能会返回由gproc设置的自定义进程ID。 md5:f6f56ec93bfd6b19

func X取自定义父进程ID

func X取自定义父进程ID() int

X取自定义父进程ID 返回自定义的父进程ID,如果存在的话,否则返回系统的父进程ID。 md5:177a13dad5ed9a39

func X取自进程ID

func X取自进程ID() int

X取自进程ID返回当前进程的pid。 md5:547eaf09253b67f9

func X执行cmd

func X执行cmd(上下文 context.Context, 命令 string) error

X执行cmd 同步执行给定的命令 `cmd`,并将命令结果输出到stdout。 md5:b97833e7f1598d90

func X执行cmdPANI

func X执行cmdPANI(上下文 context.Context, 命令 string)

X执行cmdPANI 执行与 ShellRun 相同的操作,但如果发生任何错误,则会引发恐慌。 md5:b0e6d628208193e7

func X执行cmd并返回

func X执行cmd并返回(上下文 context.Context, 命令 string, 环境变量 ...[]string) (结果 string, 错误 error)

X执行cmd并返回 同步执行给定命令 `cmd` 并返回命令结果。 md5:218406708403afde

func X执行cmd并返回PANI

func X执行cmd并返回PANI(上下文 context.Context, 命令 string, 环境变量 ...[]string) string

X执行cmd并返回PANI 执行类似于 ShellExec,但如果发生任何错误,它将引发恐慌。 md5:9754cecde7636273

func X执行cmd管道

func X执行cmd管道(上下文 context.Context, 命令 string, 输出管道 io.Writer, 输入管道 io.Reader) error

X执行cmd管道 函数同步地执行命令 `cmd`,并使用给定的输入管道 `in` 和输出管道 `out`。 命令 `cmd` 从输入管道 `in` 读取输入参数,并自动将其输出写入到输出管道 `out`。 md5:6690cb7819cb1af8

func X执行cmd管道PANI

func X执行cmd管道PANI(上下文 context.Context, 命令 string, 输出管道 io.Writer, 输入管道 io.Reader)

X执行cmd管道PANI 行为与 Shell 相同,但如果发生任何错误则会引发 panic。 md5:8ffd357cf1ea4dbc

func X搜索PATH变量文件

func X搜索PATH变量文件(文件名 string) string

X搜索PATH变量文件 在PATH环境变量中搜索二进制文件`file`。 md5:2762ea99f9622d59

func X搜索工作目录与PATH变量文件

func X搜索工作目录与PATH变量文件(文件名 string) string

X搜索工作目录与PATH变量文件 在当前工作目录和PATH环境变量中搜索名为`file`的二进制文件。 md5:56a48fa45711f1c2

func X是否为子进程

func X是否为子进程() bool

X是否为子进程 检查并返回当前进程是否是子进程。 子进程是由另一个gproc进程 fork() 创建的。 md5:9ec53f2cdad75233

func X注册信号处理函数

func X注册信号处理函数(处理函数 X函数类型_SigHandler, 信号 ...os.Signal)

X注册信号处理函数 为自定义的一个或多个信号添加自定义的信号处理器。 md5:996226c8d75ebdf5

func X注册关闭信号处理函数

func X注册关闭信号处理函数(处理函数 ...X函数类型_SigHandler)

X注册关闭信号处理函数 为关闭信号添加自定义信号处理器: - syscall.SIGINT(中断信号,通常由Ctrl+C触发) - syscall.SIGQUIT(退出信号,通常通过Ctrl+\触发) - syscall.SIGKILL(杀死信号,不可被捕获或忽略,用于强制终止进程) - syscall.SIGTERM(终止信号,用来请求程序正常退出) - syscall.SIGABRT(异常终止信号,通常由调用abort函数产生,用于指示严重错误) md5:6fd417c58f499e80

func X监听信号

func X监听信号()

X监听信号 会阻塞并进行信号监听和处理。 md5:2425bc5d9026c36f

func X自定义父进程ID

func X自定义父进程ID(父进程ID int) error

X自定义父进程ID 设置当前进程的自定义父进程ID。 md5:6da79f2272f63e59

Types

type X函数类型_SigHandler

type X函数类型_SigHandler func(sig os.Signal)

X函数类型_SigHandler 定义了一个用于处理信号的函数类型。 md5:d7319108f37510cd

type X结构_Manager

type X结构_Manager struct {
	// contains filtered or unexported fields
}

X结构_Manager 是一个管理多个进程的进程管理器。 md5:608ec304d3cca78a

func X创建进程管理

func X创建进程管理() *X结构_Manager

X创建进程管理 创建并返回一个新的进程管理器。 md5:bfef06576c70f94f

func (*X结构_Manager) X创建进程

func (m *X结构_Manager) X创建进程(路径 string, 参数 []string, environment []string) *X结构_进程

X创建进程 创建并返回一个进程对象。 md5:41e1fd6b109e05e7

func (*X结构_Manager) X删除进程ID

func (m *X结构_Manager) X删除进程ID(进程ID int)

X删除进程ID 从当前管理器中移除一个进程。 md5:0076407de3a7d26a

func (*X结构_Manager) X加入进程ID

func (m *X结构_Manager) X加入进程ID(进程ID int)

X加入进程ID 向当前管理器添加一个进程。 如果给定的 `pid` 对应的进程不存在,它不会做任何操作。 md5:c51d5832fb1ce691

func (*X结构_Manager) X发送所有进程信号

func (m *X结构_Manager) X发送所有进程信号(信号 os.Signal) error

X发送所有进程信号 向当前管理器中的所有进程发送信号 `sig`。 md5:64ce0027dcad8808

func (*X结构_Manager) X发送所有进程数据

func (m *X结构_Manager) X发送所有进程数据(字节集 []byte)

X发送所有进程数据 将数据字节发送到当前管理器中的所有进程。 md5:05d5ed3b0a5c7e3e

func (*X结构_Manager) X发送数据

func (m *X结构_Manager) X发送数据(进程ID int, 数据 []byte) error

X发送数据 向当前管理器中的指定进程发送数据字节。 md5:b477f09d2f5cca5f

func (*X结构_Manager) X取成员数

func (m *X结构_Manager) X取成员数() int

X取成员数 返回当前管理器中进程的数量。 md5:ffaeaa3ed9b66ed1

func (*X结构_Manager) X取所有进程

func (m *X结构_Manager) X取所有进程() []*X结构_进程

X取所有进程 获取并返回当前管理器中的所有进程。 md5:30ac76e5c68d45de

func (*X结构_Manager) X取所有进程ID

func (m *X结构_Manager) X取所有进程ID() []int

X取所有进程ID 获取并返回当前管理器中的所有进程ID数组。 md5:a5ef21ec52c87400

func (*X结构_Manager) X取进程对象

func (m *X结构_Manager) X取进程对象(进程ID int) *X结构_进程

X取进程对象 获取并返回一个Process对象。 如果找不到具有给定`pid`的进程,它将返回nil。 md5:d5b11d4d0e9fa1a3

func (*X结构_Manager) X清空所有进程

func (m *X结构_Manager) X清空所有进程()

X清空所有进程 会清除当前管理器中的所有进程。 md5:26053a86c2f65b33

func (*X结构_Manager) X等待所有进程退出

func (m *X结构_Manager) X等待所有进程退出()

X等待所有进程退出等待直到所有进程退出。 md5:1d27f65463fe8c00

func (*X结构_Manager) X结束所有进程

func (m *X结构_Manager) X结束所有进程() error

X结束所有进程 在当前管理器中杀死所有进程。 md5:337f683854b75187

type X结构_MsgRequest

type X结构_MsgRequest struct {
	X发送方进程ID int    // Sender PID.
	X接收人进程ID int    // Receiver PID.
	X消息组名称   string // Message group name.
	X响应数据    []byte // Request data.
}

X结构_MsgRequest是进程间通信的请求结构体。 md5:aa294ed7aef773f3

func X监听数据

func X监听数据(可选组 ...string) *X结构_MsgRequest

X监听数据 函数通过本地TCP监听来阻塞并接收来自其他进程的消息。 注意,只有当调用此函数时,才会启用TCP监听服务。 md5:dbf5481b7dcc4222

type X结构_MsgResponse

type X结构_MsgResponse struct {
	X响应状态码 int    // 1: OK; Other: Error.
	X响应消息  string // Response message.
	Data   []byte // Response data.
}

X结构_MsgResponse 是进程通信中的响应结构体。 md5:a2e9e35f8a32b58e

type X结构_进程

type X结构_进程 struct {
	exec.Cmd
	Manager *X结构_Manager
	PPid    int
}

X结构_进程 是表示单个进程的结构体。 md5:f6524ce6eee4a18b

func X创建cmd进程

func X创建cmd进程(命令 string, 环境变量 ...[]string) *X结构_进程

X创建cmd进程 创建并返回一个具有给定命令和可选环境变量数组的进程。 md5:01376a1e29c9935e

func X创建进程

func X创建进程(进程路径 string, 参数数组 []string, 环境变量 ...[]string) *X结构_进程

X创建进程 创建并返回一个新的 Process。 md5:dbd46312fa39f087

func (*X结构_进程) X发送信号

func (p *X结构_进程) X发送信号(信号 os.Signal) error

X发送信号 向进程发送一个信号。 在Windows上发送Interrupt信号未实现。 md5:c1afe56a9d236095

func (*X结构_进程) X发送数据

func (p *X结构_进程) X发送数据(数据 []byte) error

X发送数据 向进程发送自定义数据。 md5:cb2381344fb13fd4

func (*X结构_进程) X取进程ID

func (p *X结构_进程) X取进程ID() int

X取进程ID 获取并返回进程的PID。 md5:7f6e89391a9d1aac

func (*X结构_进程) X同步运行

func (p *X结构_进程) X同步运行(上下文 context.Context) error

X同步运行以阻塞方式执行进程。 md5:aeab1ddf5fca3d31

func (*X结构_进程) X异步运行

func (p *X结构_进程) X异步运行(上下文 context.Context) (int, error)

X异步运行 以非阻塞方式开始执行进程。 如果成功,它将返回进程ID(pid),否则返回一个错误。 md5:4607fc00f35e6338

func (*X结构_进程) X结束进程

func (p *X结构_进程) X结束进程() (错误 error)

X结束进程 立即导致 Process 终止。 md5:4bacb16ab3b9aebe

func (*X结构_进程) X释放资源

func (p *X结构_进程) X释放资源() error

X释放资源 释放与进程 p 关联的任何资源,使其将来无法使用。 只有在不调用 Wait 的情况下才需要调用 X释放资源。 md5:f3540c25ba14f0ee

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL