Golang 执行流程分析

文章目录

  • [1. 编译和运行](#1. 编译和运行)
  • [2. 编译和运行说明](#2. 编译和运行说明)

1. 编译和运行

  • 如果是对源码编译后,再执行,Go的执行流程如下图
  • 如果我们是对源码直接 执行 go run 源码,Go的执行流程如下图

两种执行流程的方式区别

  1. 如果先编译生成了可执行文件,那么可以将该可执行文件拷贝到没有go开发环境的机器上,仍然可以运行
  2. 如果是直接 go run go源代码,那么如果要在另外一个机器上这么运行,也需要go开发环境,否则无法执行
  3. 在编译时,编译器会将程序运行依赖的库文件包含在可执行文件中,所以,可执行文件变大了很多

2. 编译和运行说明

  1. 有了go源文件,通过编译器将其编译成机器可以识别的二进制码文件。

  2. 在该源文件目录下,通过go buildhello.go 文件进行编译。可以指定生成的可执行文件名,在windows 下必须是 .exe 后缀。

  3. 如果程序没有错误,没有任何提示,会在当前目录下会出现一个可执行文件(windows下是 .exe ,Linux 下是一个可执行文件),该文件是二进制码文件,也是可以执行的程序。

  4. 如果程序有错误,编译时,会在错误的那行报错。有助于程序员调试错误

  5. 运行有两种形式

    • 直接运行生成的可执行Go程序,比如:hello.exe
    • 通过运行工具go run对源代码文件进行运行
相关推荐
Dontla8 分钟前
go语言Windows安装教程(安装go安装Golang安装)(GOPATH、Go Modules)
开发语言·windows·golang
chushiyunen8 分钟前
python rest请求、requests
开发语言·python
铁东博客14 分钟前
Go实现周易大衍筮法三变取爻
开发语言·后端·golang
baidu_huihui16 分钟前
在 CentOS 9 上安装 pip(Python 的包管理工具)
开发语言·python·pip
南 阳17 分钟前
Python从入门到精通day63
开发语言·python
lbb 小魔仙18 分钟前
Python_RAG知识库问答系统实战指南
开发语言·python
oak隔壁找我41 分钟前
SpringBoot中MyBatis的Mapper的原理
后端
oak隔壁找我1 小时前
Spring Boot 自动配置(Auto-configuration)的核心原理
后端
oak隔壁找我1 小时前
Java的JAR包
后端
GetcharZp1 小时前
告别 TCP 握手延迟!让你的 Go 服务瞬间拥抱 HTTP/3 时代
后端