![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
golang
文章平均质量分 53
伯舟兄
Java
展开
-
通信改变内存 通过内存通信
通信改变内存 通过内存通信 1. 通过内存通信 1.1 这里要了解一下并发(假设大家都懂Java|C++) 1.1.1 在传统的编程语言中,并发的通信都是通过内存的改变而通信 举个例子 我现在有两个线程执行一个for循环,目的是在List中添加10个数据 主线程 添加3个 剩下7个由Thread1 和 main(主线程) 共同完成 参考下列代码: 当内存中list的数据长度到达3的时候,通知另一个线程 这个就是通过内存通信了 List<int> list = new A原创 2020-09-19 00:05:16 · 185 阅读 · 0 评论 -
golang 函数为什么能返回局部变量
golang 函数为什么能返回局部变量 1. 代码 //定义变量返回一个指针int func stackframe1() *int{ var testVarable int = 10 return &testVarable } //golang 编译器会自己决定这个变量存放于栈还是堆,编译器会自己做逃逸分析 //如果这个变量作用范围没有超出当前函数 则会存放于栈中 否则存放于堆中 ...原创 2020-09-09 21:53:14 · 458 阅读 · 0 评论