golang 不知名小厂面经(凉

1.map不安全,你要怎么解决 只能用go

我说用redis 和sync.map 加锁 他说不太行...

--------------------------------------------------------------------

用golang的读写锁

用channel 把消息发给 channel 让channel执行

2.这段代码哪里有错

在 Go 中,如果从一个已关闭的通道读取值,通道会立即返回其零值,并且不会造成阻塞。因此,即使通道没有值了,你仍然可以尝试从通道读取数据,但读取的值将会是通道元素类型的零值。

close 位置错了

close(ch)放到生产者后面

如何交替打印

用channel切片 不能用数组 因为会竞争

当多个协程同时访问数组的不同位置时,通常情况下是安全的,但需要注意确保数组索引在有效范围内,并采取适当的措施来避免并发访问导致的问题。

3.linux查看所有资源使用情况的命令

挺逆天的

  1. top:top 命令用于实时查看系统资源使用情况,包括 CPU、内存、进程等。它以交互式的方式显示信息,并且可以动态地刷新。
  2. htop:htop 是 top 的增强版,提供了更多的功能和信息显示,包括更友好的界面、可定制性更强等。
  3. ps:ps 命令用于显示当前系统进程的信息,可以查看进程的 PID、状态、CPU 使用情况等。常见的参数包括 -aux、-ef 等。
  4. free:free 命令用于显示系统内存使用情况,包括总内存、已使用内存、空闲内存等。
  5. df:df 命令用于显示磁盘空间使用情况,可以查看文件系统的挂载点、总空间、已用空间、剩余空间等信息。
  6. du:du 命令用于显示目录或文件的磁盘使用情况,可以查看指定目录或文件的大小。
  7. netstat:netstat 命令用于显示网络状态和统计信息,包括网络连接、路由表、接口统计等。
  8. ifconfig/ip:ifconfig(在新版本中被 ip 替代)命令用于显示网络接口的配置信息,包括 IP 地址、子网掩码、网关等。
  9. iotop:iotop 命令用于实时监视磁盘 I/O 使用情况,可以查看哪些进程在进行磁盘读写操作。
  10. vmstat:vmstat 命令用于显示系统的虚拟内存统计信息,包括内存、磁盘、CPU 等方面的使用情况。
全部评论
我觉得你说的第二个问题,close可以用defer,然后那十个存入通道的值0-9,假设到了0,if !ok的话,那么这个0,他就直接return了,后面应该打印的,也不再打印了,我不知道我说的对不对,但我认为你这个分析不太完全
1 回复 分享
发布于 2024-07-12 14:10 天津
就问了三个问题?
1 回复 分享
发布于 2024-06-09 20:54 湖北
佬,方便问一下是哪个厂嘛
1 回复 分享
发布于 2024-05-22 09:50 山东
第二个close关键问题是会panic吧,往关闭chan写
点赞 回复 分享
发布于 2024-07-17 09:44 北京
sync.map不就是读写+分段吗
点赞 回复 分享
发布于 2024-07-17 09:42 北京
用大神们的第三方mao就行了
点赞 回复 分享
发布于 2024-06-03 08:50 北京

相关推荐

全程一小时左右,写了15分钟代码 ,第二天中午打电话约二面算法:- 快排找第K大的数- 判断是不是完全二叉树写完面试官说只写一个就行了八股文:上来先问的接不接受转语言,部门主要用golang1. 项目拷打,各种细节问题2. 数据库索引,数据库连接池怎么设置,(以为是线程池,说了N+1 2N,不过面试官也顺着说下去了,问N是什么) 后续提示应该根据请求来设置3. 数据库表怎么设计的,字段用什么类型,金额为什么用BigDecimal4. 数据库用户密码怎么存的,用的什么加密5. 索引,索引失效,隐式类型转换,最左匹配原则6. 登录注册的全部流程说一遍,jwt是什么7. 事务,哪里用到了事务8. 慢sql, 深分页怎么解决, 索引优化,覆盖索引 分表9. 数据库id怎么生成的, 主键自增,有没有了解过分布式id  雪花算法,时钟回退怎么解决10. redis单线程为什么快,工作原理是什么11. redis缓存三件套 如何解决12. 内核态转换, 为什么要有内核态转换  什么是系统中断, 软中断和硬中断(到这里人已经快麻了,八股文轰炸)13. 进程和线程的区别是什么  为什么要有线程,线程共享的资源有哪些,独享的资源有哪些 怎么向进程发送信号14. http 1.0 1.1的区别 长连接 time_wait过多是什么原因 可能有哪些危害15. 了解中间件吗 说了rabbitmq了解过 简单介绍一下反问环节:询问部门主要做什么 回答是基础架构,k8s容器中间件等等发面经积累好运气
作业帮二面19人在聊 查看18道真题和解析
点赞 评论 收藏
分享
评论
9
41
分享

创作者周榜

更多
牛客网
牛客企业服务