多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
### 创建进程 本章开始时演示了Hello World程序,其实已经创建了新的进程,通过`Bash`或者`zsh`这些Shell很容易创建新的进程,但Shell本身是怎么实现的呢?我们又能不能用Go实现类似Shell的功能呢? ### 系统调用 原来这一切都是操作系统给我们做好的,然后暴露了使用的API接口,这就是系统调用。Linux或者其他Unix-like系统都提供了`fork()`和`exec()`等接口,Bash或者我们写的程序都可以通过调用这些接口来操作进程。 ### Go创建进程 而Go已经封装了与进程相关的接口,主要在`os/exec`这个Package中。通过使用封装好的接口,我们很容易就可以在自己的项目中调用其他进程了。 这一章已经介绍了这么多概念,马上会有实践环节,用Go实现多种方式来来创建和运行外部进程。