编程开发-Go-高级

编程开发-Go-高级

1. 逃逸分析中,`new(T)` 创建的变量一定分配在?(单选题)

A.

B.

C. 静态区

D. 不确定

2. 栈扩容时会发生?(单选题)

A. 直接原地扩容

B. 新建大栈拷贝数据,销毁旧栈

C. 直接申请堆内存

D. 暂停所有协程

3. Go 1.19 协程抢占调度新增机制是?(单选题)

A. 信号抢占

B. 异步抢占

C. 系统调用抢占

D. 时间片抢占

4. 协程处于_Gwaiting状态原因不包括?(单选题)

A. 通道阻塞

B. 定时器等待

C. CPU空闲休眠

D. 执行完退出

5. 本地P队列满后,新建G优先放入?(单选题)

A. 全局运行队列

B. 空闲P队列

C. 阻塞队列

D. 休眠队列

6. 调度中M绑定P的目的是?(单选题)

A. 获取运行上下文与本地队列

B. 绑定系统线程

C. 分配内存空间

D. 开启GC权限

7. 有缓冲通道关闭后,读取剩余数据完毕返回?(单选题)

A. 零值,false

B. panic

C. 阻塞

D. 随机值

8. 向已关闭通道发送数据结果?(单选题)

A. 阻塞

B. 直接panic

C. 静默丢弃

D. 缓存暂存

9. 实现定时一次性任务最优通道搭配?(单选题)

A. time.After

B. time.Ticker

C. sleep循环

D. 手动计时器

10. select 无case无default行为?(单选题)

A. 永久阻塞当前G

B. 直接退出

C. 报错编译失败

D. 休眠1秒