自己除了找python相关的岗位,还想找一下go的岗位,有转语言的倾向。但我自由半年的项目经验。
谈谈对defer的认识
- defer用于资源的释放,会在函数返回之前进行调用,它会经常被用于关闭文件描述符、关闭数据库连接以及解锁资源、还有就是refer+recover的方式捕获异常。
- 在执行defer语句的时候,程序不会立即执行,而是先将defer后面的语句压入栈中,值得注意的是,如果后面的语句含有变量,那么会copy一份一起压入栈,等整个方法体执行完毕之后,再根据先入后出的顺序执行defer后面的语句
谈谈切片和数组吧
- 切片是不定长的,数组必须给定一个长度
- 切片如果作为函数参数,如果修改切片里面的值,外面的切片也会被修改;值得注意的是,如果在函数内append操作,则会copy一份切片,不会影响外面的切片值。append操作会根据切片当前容量,如果当前容量满了,则会以2的倍数创建一个新的切片,容量步长是这样的1,2,4,8,16….
- 数组作为函数参数,传递的是值,修改函数内的数组不影响外部数组,因为函数会copy一份数组
谈谈goroutine吧
原创文章,作者:站长,如若转载,请注明出处:https://wsppx.cn/949/%e7%bd%91%e7%bb%9c%e5%bc%80%e5%8f%91/
相关推荐
-
Mysql 面试题复习
什么是索引 索引是一种数据结构,目的是加速查询速度,mysql innodb的索引默认是B+树,索引类型有普通索引、主键索引、唯一索引、前缀索引 有哪些存储引擎 innodb是事务…
-
k8s基本安装(一)
前言 win10 vm16 5台2c/2g/50G centos虚拟机 设计架构 网络设置 vm NAT网络设置 网段:10.4.7.0 网关:10.4.7.254 网络适配器设置…
-
grpc请求超时处理
错误描述 grpc默认超时时间是1s,有些框架是500ms,当超时了会报如下错误: 客户端 client连接 controller 服务端增加超时 controller
-
前端学习记录之一:函数式编程
本节回顾 1.函数式编程(核心思想:把运算过程抽象成函数) 2.函数相关复习(函数是一等公民,高级函数,闭包) 3.函数式编程基础(lodash,纯函数,柯里化,管道,函数组合) …
-
golang同目录调用其他文件函数的用法
问题复现 解决方法 这个应该是新手常见的问题,golang的包管理方式,这个运行错误是由于你执行了main.go,而没有编译其他go文件,当然不知道run函数哪里来的 正确方式 g…
-
python后端开发面试-redis缓存
默认16个数据库 五中数据结构 string list(列表) set(集合) zset(有序列表) hash(字典) 理解穿透、击穿、雪崩及其处理方法 redis怎样实现分布式锁…
-
golang net http一个低级错误
错误信息 原因 在go中http/net不像python的requests,封装的没有那么全,默认没有加body类型。 解决方式 request.Header.Set(“…
-
记一次Proto Http请求报错问题:unKnow error: proto: (line 1:9): invalid value for int32 type: 100100013100
背景 kratos支持rpc和http方式进行通信,由于不同集群,不能进行内网通信,最终还是用http的方式,由于部门用的都是kratos,因此可以不用修改原来的通信方式,只是将之…
-
python后端开发面试-语言基础篇
Python是动态语言还是静态?强类型还是弱类型? python 是动态语言,怎么区分呢?关键看类型检测是在运行时检查还是编译时检查,Python是运行时检查,所以是动态语言,像j…