为什么高并发服务用 epoll 而不是信号驱动 I/O(O_ASYNC/SIGIO)?
为什么高并发服务用 epoll 而不是信号驱动 I/O(O_ASYNC/SIGIO)? 本文先给出可直接复述的结论,再用最小代码说明信号驱动IO SIGIO epoll 对比的工作方式、判断依据、项目边界和常见误区。
异步编程专题面试题第 5 页,显示第 201–250 题,共找到 292 道完整解析,可继续按分类、标签与关键词缩小范围。
按稳定语义路径排序
为什么高并发服务用 epoll 而不是信号驱动 I/O(O_ASYNC/SIGIO)? 本文先给出可直接复述的结论,再用最小代码说明信号驱动IO SIGIO epoll 对比的工作方式、判断依据、项目边界和常见误区。
sync_file_range 为什么适合写前日志(WAL)这类需要细粒度回写的场景? 本文先给出可直接复述的结论,再用最小代码说明sync_file_range 异步回写 WAL 细粒度的工作方式、判断依据、项目边界和常见误区。
write 返回成功后,数据到达磁盘的顺序和时机由什么决定? 本文先给出可直接复述的结论,再用最小代码说明write 写回 dirty page 回写 落盘时机的工作方式、判断依据、项目边界和常见误区。
Linux 信号有哪些不可靠性,为什么信号处理函数里只能调用异步信号安全函数? 本文先给出可直接复述的结论,再用最小代码说明Linux 信号 异步信号安全的工作方式、判断依据、项目边界和常见误区。
signalfd 相比传统信号处理函数解决了什么问题? 本文先给出可直接复述的结论,再用最小代码说明signalfd 信号处理的工作方式、判断依据、项目边界和常见误区。
React 输入框报『组件从非受控变为受控』警告,通常是什么原因、怎么修? 本文先给出可直接复述的结论,再用最小代码说明React 非受控变受控警告的工作方式、判断依据、项目边界和常见误区。
React 非受控输入的 defaultValue 改了,为什么当前内容没跟着变? 本文先给出可直接复述的结论,再用最小代码说明React defaultValue 改变输入框不更新的工作方式、判断依据、项目边界和常见误区。
React 错误边界捕获不到哪些错误,事件回调和异步代码里的报错该怎么办? 本文先给出可直接复述的结论,再用最小代码说明React 错误边界 捕获不到 事件 异步 错误的工作方式、判断依据、项目边界和常见误区。
解释原生 select multiple 的字符串数组 value、selectedOptions 与 FormData.getAll,说明选项删除、异步回填、空选择和选中顺序的业务边界。
React 19 的 useOptimistic 在共享服务器数据的界面上如何实现乐观更新,提交失败时界面如何回退? 本文先给出可直接复述的结论,再用最小代码说明React 19 useOptimistic 乐观更新 回退的工作方式、判断依据、项目边界和常见误区。
React 19 的 use() 相比 useContext 在读取共享数据上多出了什么能力? 本文先给出可直接复述的结论,再用最小代码说明React 19 use() Promise Context 条件读取的工作方式、判断依据、项目边界和常见误区。
为什么不能直接把 async 函数传给 React useEffect,又该怎样组织 await 与取消信号? 本文先给出可直接复述的结论,再用最小代码说明React useEffect async Promise cleanup cancel的工作方式、判断依据、项目边界和常见误区。
React Effect 挂载、依赖更新和卸载时怎样建立与清理? 本文先给出可直接复述的结论,再用最小代码说明React useEffect cleanup 执行顺序的工作方式、判断依据、项目边界和常见误区。
React 中 useRef 和 useState 都能跨渲染保存数据,二者的本质区别和适用场景是什么? 本文先给出可直接复述的结论,再用最小代码说明React useRef 和 useState 区别的工作方式、判断依据、项目边界和常见误区。
React 19 中 startTransition 接受 async 函数(Action)后与 React 18 的用法有什么不同? 本文先给出可直接复述的结论,再用最小代码说明React 19 startTransition async Action 区别的工作方式、判断依据、项目边界和常见误区。
通过报价与确认按钮解释 useMemo 缓存计算结果、useCallback 缓存函数引用的区别,展示完整依赖和旧闭包边界,并说明函数创建、函数调用、请求去重与异步缓存并不是同一件事。
action 中执行长时间异步任务(如文件上传)时,如何避免阻塞主线程? 本文先给出可直接复述的结论,再用最小代码说明action 长时间异步 文件上传 主线程阻塞的工作方式、判断依据、项目边界和常见误区。
loader 使用 async/await 时,为何必须配合 Suspense?其作用机制是什么? 本文先给出可直接复述的结论,再用最小代码说明loader 异步数据 Suspense 机制的工作方式、判断依据、项目边界和常见误区。
React 的 'use server' 与 Server Functions 解决了什么问题,客户端调用它们时实际发生了什么? 本文先给出可直接复述的结论,再用最小代码说明React use server Server Functions 原理的工作方式、判断依据、项目边界和常见误区。
为什么只有 Suspense 组件本身不能让 React 在渲染期间直接 await 数据,还需要什么配合? 本文先给出可直接复述的结论,再用最小代码说明React Suspense 数据获取 条件的工作方式、判断依据、项目边界和常见误区。
React 事件处理器中 await 之后再读取 state 拿到的是旧值,如何拿到最新状态? 本文先给出可直接复述的结论,再用最小代码说明React 异步回调 state 过期 闭包 旧值的工作方式、判断依据、项目边界和常见误区。
通过 Promise 和定时器内的两个状态更新比较 React 17、React 18 createRoot 与旧入口,说明自动批处理的观察方法和 await 边界。
用两个并发保存任务解释函数式更新如何组合加减计数,区分队列中的前一状态与闭包中的其他变量,并说明直接设置确定值仍然合理。
Redis 大 key 会造成哪些问题,排查到之后如何按数据类型拆分? 本文先给出可直接复述的结论,再用最小代码说明Redis 大 key 危害 拆分 bigkeys的工作方式、判断依据、项目边界和常见误区。
Redis 缓存击穿(单个热点键过期被并发重建)有哪些防护手段,互斥锁与逻辑过期怎么选? 本文先给出可直接复述的结论,再用最小代码说明Redis 缓存击穿 互斥锁 逻辑过期的工作方式、判断依据、项目边界和常见误区。
Read Through、Write Through 与 Write Behind 三种缓存模式的职责划分和一致性差异是什么? 本文先给出可直接复述的结论,再用最小代码说明Read Through Write Through Write Behind 缓存模式 区别的工作方式、判断依据、项目边界和常见误区。
Redis 官方提出的 Redlock 算法如何在多个独立实例上加锁,它解决单实例主从切换下的什么问题? 本文先给出可直接复述的结论,再用最小代码说明Redis Redlock 算法 多实例 安全性的工作方式、判断依据、项目边界和常见误区。
Redis 主从复制为什么是异步的,主节点写入成功未同步到副本就宕机会怎样,WAIT 命令能缓解什么? 本文先给出可直接复述的结论,再用最小代码说明Redis 异步复制 数据丢失 WAIT 命令的工作方式、判断依据、项目边界和常见误区。
耗时操作无法同步完成时,202 Accepted 加状态轮询的接口怎么设计? 本文先给出可直接复述的结论,再用最小代码说明202 Accepted 异步任务 轮询 状态端点的工作方式、判断依据、项目边界和常见误区。
批量接口该限制单批数量吗,大批量请求的超时和内存问题怎么控制? 本文先给出可直接复述的结论,再用最小代码说明批量接口 大小限制 超时 分片的工作方式、判断依据、项目边界和常见误区。
React Native 中获取组件真实尺寸与屏幕位置有哪些方式,onLayout 与 measure 各适合什么场景? 本文先给出可直接复述的结论,再用最小代码说明React Native onLayout measure 获取组件尺寸位置的工作方式、判断依据、项目边界和常见误区。
React Native Android 原生模块里 Callback、Promise 与同步方法分别适合什么返回边界? 本文先给出可直接复述的结论,再用最小代码说明React Native Android NativeModule Callback Promise的工作方式、判断依据、项目边界和常见误区。
React Native 旧 Bridge 的异步序列化在大对象与高频调用下会出现什么瓶颈? 本文先给出可直接复述的结论,再用最小代码说明React Native Bridge 序列化 性能瓶颈的工作方式、判断依据、项目边界和常见误区。
React Native TurboModule 的 Codegen 规格里,为什么不能随意使用动态 any 或复杂联合类型? 本文先给出可直接复述的结论,再用最小代码说明React Native TurboModule Codegen schema 类型的工作方式、判断依据、项目边界和常见误区。
React Native 中频繁的桥(Bridge)通信为什么成为性能瓶颈? 本文先给出可直接复述的结论,再用最小代码说明React Native Bridge 瓶颈 序列化的工作方式、判断依据、项目边界和常见误区。
React Native 旧架构中 JS 线程、UI(主)线程与原生模块线程分别负责什么? 本文先给出可直接复述的结论,再用最小代码说明React Native 线程模型 JS 线程 UI 线程的工作方式、判断依据、项目边界和常见误区。
React Native 新架构(Fabric/JSI)相对旧桥接模型在性能上解决了什么核心问题? 本文先给出可直接复述的结论,再用最小代码说明React Native 新架构 JSI Fabric 性能的工作方式、判断依据、项目边界和常见误区。
高并发计数器更新同一行成为热点时,为什么性能会急剧下降,有哪些缓解手段? 本文先给出可直接复述的结论,再用最小代码说明热点行 更新 行锁 竞争 计数器的工作方式、判断依据、项目边界和常见误区。
如何在 Svelte 组件中使用 `await` 从异步函数获取数据,并在数据加载完成时渲染内容? 本文先给出可直接复述的结论,再用最小代码说明Svelte await 异步数据 加载完成渲染的工作方式、判断依据、项目边界和常见误区。
在 Svelte 中使用 `await` 获取异步数据时,如何处理请求失败的情况并显示错误提示? 本文先给出可直接复述的结论,再用最小代码说明Svelte await 异步错误处理 错误提示显示的工作方式、判断依据、项目边界和常见误区。
如何在 Svelte 中通过响应式变量管理异步数据加载过程中的“加载中”状态? 本文先给出可直接复述的结论,再用最小代码说明Svelte async loading state 响应式状态管理的工作方式、判断依据、项目边界和常见误区。
如何在 Svelte 组件中通过 `stream` 模式处理持续更新的数据流,如实时消息? 本文先给出可直接复述的结论,再用最小代码说明Svelte stream 流式数据 实时消息处理的工作方式、判断依据、项目边界和常见误区。
SvelteKit 表单 action 接收 JSON 格式请求体时,如何正确解析并处理? 本文先给出可直接复述的结论,再用最小代码说明SvelteKit 表单 action JSON 请求体 解析的工作方式、判断依据、项目边界和常见误区。
SvelteKit 的 load 函数中异步数据获取失败时,如何正确处理并返回错误状态? 本文先给出可直接复述的结论,再用最小代码说明SvelteKit load 异步数据 错误返回的工作方式、判断依据、项目边界和常见误区。
SvelteKit load 函数中如何延迟加载部分数据以优化首屏性能? 本文先给出可直接复述的结论,再用最小代码说明SvelteKit load 延迟加载 数据优化的工作方式、判断依据、项目边界和常见误区。
读路径降级和写路径降级的难度为什么不同,写路径有哪些可行的降级手段? 本文先给出可直接复述的结论,再用最小代码说明读降级 写降级 异步化 最终一致的工作方式、判断依据、项目边界和常见误区。
秒杀场景下单个商品的库存扣减热点如何解决,为什么不能直接依赖数据库行锁? 本文先给出可直接复述的结论,再用最小代码说明秒杀 库存 热点扣减 行锁 缓存扣减的工作方式、判断依据、项目边界和常见误区。
分片后跨分片的聚合查询和分页如何实现,各方案代价是什么? 本文先给出可直接复述的结论,再用最小代码说明跨分片查询 聚合 分页 实现的工作方式、判断依据、项目边界和常见误区。
评论数、点赞数在高并发下如何避免计数漂移,列表页又要多快看到变化? 本文先给出可直接复述的结论,再用最小代码说明评论 计数 一致性 最终一致的工作方式、判断依据、项目边界和常见误区。
图片上传后生成多尺寸缩略图,同步处理、异步任务和按需生成怎么选? 本文先给出可直接复述的结论,再用最小代码说明图片上传 缩略图 异步处理 按需生成的工作方式、判断依据、项目边界和常见误区。