- 博客(4)
- 收藏
- 关注
原创 golang跨文件调函数,代码无法运行
原因是go run后面直接跟go文件名时,它只会扫描这一个go文件,不会扫描其他go文件,自然找不到Add()函数的定义。,main.go放到main目录下,math.go放到util目录下,所以在main.go里需要import "util"。如下图,abc是我的项目根目录,建了2个go文件,main.go和math.go,在main.go里要去调math.go里的Add()函数。那我们就创建go.mod文件呗,可以手动创建,但我们一般通过go mod init命令自动创建。再运行一次,终于跑通了!
2024-09-19 12:29:54
925
原创 go协程、java虚拟线程、线程池,试验对比
本文的目的是对比Go协程、Java线程池、Java虚拟线程的切换成本,所以计算任务本身是一个空函数。java传统线程池和虚拟线程仅仅是第29行和30行的区别。
2024-09-14 11:49:33
844
原创 1小时快速了解Go语言(写给打算转职golang的程序员)
go语言里的所有等号赋值都会发生拷贝,由于切片是一个包含3个成员变量的结构体,所以切片的拷贝实际上拷贝的是那3个成员变量,也就是说并没有拷贝底层数组,而只是拷贝了底层数组的指针。以大写开头的全局变量(即函数外的变量)、函数、结构体、结构体的成员变量、结构体的成员方法、接口可以在其他包中使用,称为“可导出”,类似于其他语言里public的概念。Go语言的并发性能非常优异,Go语言使用协程而非线程并发执行任务,协程比线程占用的内存空间更小,协程的创建、销毁、切换成本也更低。
2024-09-14 11:03:44
2709
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人