编程开发-Go-中级
编程开发-Go-中级
1. Go协程栈初始大小为(单选题)
A. 2KB
B. 8KB
C. 16KB
D. 1MB
2. 协程栈扩容采用的策略是(单选题)
A. 分段栈
B. 连续栈
C. 固定栈
D. 线程栈复用
3. 函数内局部变量被取地址传给外部,该变量会(单选题)
A. 栈上分配
B. 发生逃逸分配到堆
C. 静态区分配
D. 常量区分配
4. 下列哪种变量一定不会逃逸(单选题)
A. 仅函数内部使用无任何外出引用
B. 传给接口类型参数
C. 存入全局切片
D. 闭包引用
5. GMP调度中,P的本地运行队列默认长度是(单选题)
A. 256
B. 512
C. 1024
D. 128
6. Go调度抢占机制触发时间阈值大约是(单选题)
A. 10ms
B. 1ms
C. 100ms
D. 50ms
7. 协程陷入syscall系统调用阻塞后(单选题)
A. M与P解绑,P去找空闲M运行其他G
B. M销毁重建
C. 整个P暂停调度
D. 进入全局休眠队列
8. 工作窃取调度机制指的是(单选题)
A. 空闲P从其他P队列偷取协程执行
B. M主动抢占CPU
C. GC抢占业务协程
D. 主线程窃取子协程任务
9. 有缓冲通道缓冲区满时发送操作状态(单选题)
A. 发送G进入发送阻塞队列
B. 直接丢弃数据
C. 触发panic
D. 自动扩容缓冲区
10. 关闭通道后继续执行接收操作,返回值为(单选题)
A. 零值 + false
B. panic崩溃
C. 永久阻塞
D. 随机值