网易
文章目录
网易八股面试
八股文
golang:
1,不同包的多个init函数的运行时机(答得不好 没看过这里)
2,init和main函数的执行顺序 (init函数在main函数开始前执行)
3,如何删除切片中的某一个元素 (就说了一个通过append(a[:2],a[3:]…))
4,sync.Map{}怎么使用 (使用Store存)
5,怎么控制去并发操作map(加锁)
6,go的读写锁怎么工作 (一大段支支吾吾后说了读写互斥)
7,如何保存程序崩溃时的数据 (不会,说了日志,在项目中聊到recover我就没想到这)
8,多个并发操作对map进行读写,程序会发生什么(给了两个选项,a:会继续执行 b:程序会崩溃,选了a,结果现在一查发现是b)
9,超时处理 (在网上查到用context.WithTimeout更好,我说的time.After) 去监听 channel的一个超时事件
- context deadline 超时控制
- 通过 time.After
10,对一个已经关闭的channel读写会发生什么 (如果不空的话,先读数据,空的话读对应类型的零值, 写的话会出现panic)
11,开五个协程 全部执行一个函数,怎么保证协程执行完全部打印(使用sync.WaitGroup ) 1. 简单点用 WaitGroup 阻塞 5个协程 2. 基于channel, 开大小为5的channel, 然后 每个携程执行完成之后,发送一个事件
|
|
linux:
1,怎么去查询某一行的数据 (grep)
2,怎么汇总url,统计每个url (不会)
|
|
|
|
3,怎么查找进程 (ps)
4,怎么查找有go语言的进程 (pgrep go)
mysql:
1,对abc建立联合索引,他们的顺序重要么(重要,应把使用频率高的放在前面)
作者:牛客128067218号 链接: https://www.nowcoder.com/discuss/499307188142223360?sourceSSR=search 来源:牛客网
文章作者 lyr
上次更新 2024-02-02