V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
V2EX  ›  fds  ›  全部回复第 1 页 / 共 54 页
回复总数  1073
1  2  3  4  5  6  7  8  9  10 ... 54  
❮ ❯
后续改进:把列表扫描阶段剩余的两个子进程也去掉了,200 个应用的 ListApplications 从 14.7s 降到约 94ms 。

1. mdls 改为直接读 bundle 。按当前界面语言依次读 Contents/Resources/<lproj>/InfoPlist.strings (中文:zh-Hans / zh_CN / zh ,英文:en / English / Base ),取 CFBundleDisplayName 或 CFBundleName ;没有本地化文件时回退 Info.plist 的同名字段,再回退目录名。howett.net/plist 能解析 .strings 的 XML 、二进制和 OpenStep 文本三种格式,实测微信 / 熊掌记 / 飞书等中文名正确。副作用:原 mdls 返回的是 Finder 文件名(如 Alfred 5 ),现在优先 bundle 显示名( Alfred )。
2. sips 图标转换延迟到首次渲染。AppInfo 去掉 IconPNG ,新增 core.ApplicationIconPNG(ctx, appPath)。UI 层在 applicationImage 首次遇到某应用时标记 pending 并起 goroutine 转换,4 并发、单个 10s 超时,完成后通过 win.Update 写入图标缓存,期间显示头像占位。列表出现不再等图标。

累计效果( 200 个应用):

- 原始:>30s ,超时弹窗
- 保留部分结果 + 体积延迟 + ps 一次性:14.7s
- 再加 Info.plist 读名 + 图标延迟:约 94ms
👍很棒。我加了个剩余磁盘空间显示。另外遇到个报错,分析如下:

问题:启动约 30 秒后弹窗「操作未完成 / context deadline exceeded 」。

原因:loadApplications 在启动时后台扫描 /Applications ,整体限时 30s 。core.ListApplications 对每个 .app 串行做 4 件事,各自开子进程或遍历目录:mdls 取显示名、WalkDir 算包体积、pgrep -f 判断是否运行、sips 转图标。我机器上 200 个应用合计超过 30s ,超时后整份结果被丢弃,错误原样弹到 UI 。

最重要的改进(按价值排序):

1. 超时不要丢弃已扫描结果。ListApplications 在 ctx.Err() 时返回已收集的部分列表,loadApplications 对 context.DeadlineExceeded 只记 log 不弹窗。这是直接消除弹窗的改动。
2. 包体积延迟计算。pathSize 全目录遍历是最大开销(约 11s ),列表阶段不需要。改为选中应用时在后台与关联文件扫描一起算。
3. 运行状态一次性获取。启动时跑一次 ps -axo comm=,内存里按 appPath/Contents/MacOS/ 前缀匹配,替代每个应用一次 pgrep (约 6s )。
4. 后续可选:mdls 改读 Info.plist 的 CFBundleDisplayName ,sips 图标转换延迟到可见时。这两项仍占约 14s 。

效果:1–3 实施后,200 个应用扫描 30s+ 降到 14.7s ,不再弹窗。
4 小时 40 分钟前
回复了 1300296933 创建的主题 › 程序员 › 怎么感觉自己变不成一个大人
乔布斯还想永远年轻呢!
现在有 AI 协助干啥都方便了许多。
跟前面一样,我也是自己编译了 Ice 改改报错。
外接买了个可以用水冲洗的,还挺方便。洗完晾晾就很干净。唯一问题是可能得晾 24h 才能全干,所以还得备着个旧的。
13 小时 23 分钟前
回复了 LUCIFERorCHRIS 创建的主题 › 生活 › 十年挚友,突然离世
这也太年轻了。人体是如此的脆弱,且用且珍惜……
2 天前
回复了 250419 创建的主题 › 职场话题 › 到底谁今天上班能有好脸色?
上班不是给自己挣钱吗?有啥不开心的?还能顺便培养自己的能力。https://i.imgur.com/io2SM1h.png
@yunshangzhou #43 补充一下,如果你现在没有这方面的愿望,就不必勉强自己。无论周围人给你多大压力,都没必要为了满足他们的期待而结婚生子。等到自己真正愿意、也准备好了再考虑。毕竟这不是人生必须完成的任务,最后承担责任的也是你,而不是那些催促你的人。
@yunshangzhou #43 意义和感动本来就是针对具体的人而言的,对宇宙来说,人的一切感受都微不足道;既然如此,把时间花在哪里又有什么高下之分?繁衍是生命延续的基本机制,人的身体和情感也会在亲密关系、生育和养育中获得一定的积极反馈。可以选择不要孩子,但也不必对生育和养育如此排斥。
可能因为你本来就不喜欢孩子,所以更容易注意并记住那些吵闹的,而忽略了安静的孩子。公共场合确实应该尽量避免打扰别人,很多孩子实际上是能做到的,不能只凭那些显眼的负面例子来判断所有孩子。我理解你对这些现象的不满,但个体的力量毕竟有限。想让整个世界都按照自己的喜好运转,是一件很困难的事。比起期待所有不喜欢的事物消失,或许更实际的做法,是在合理表达诉求的同时,也接受这个世界不可能处处符合自己的心意。
@yunshangzhou #31 在陪伴一个全新的生命成长时,能唤起许多早已被自己遗忘的感受。看到孩子某些看似奇怪的行为,你可能会突然意识到:原来小时候的自己也会这样做,背后还有这样的原因;同时也会第一次真正理解,当年的父母面对这些事情时是什么处境。而且在养育孩子的过程中,确实也可能弥补一些自己的遗憾。比如小时候父母经常不在家,那么现在就会更愿意花时间陪伴孩子。晚上哄他睡觉、让他知道自己一直在身边时,有时也像是在隔着很多年,安慰那个曾经缺少陪伴的自己。惊喜并不是把旧的人生重复一遍,而是在爱孩子的过程中,以另一种身份理解父母、回望童年,也慢慢照顾和治愈过去的自己。
6 天前
回复了 nomisk 创建的主题 › iDev › 想入个 macmini 做 iOS 开发 16g 够用吗
主力机不建议这么小内存。
6 天前
回复了 zha0w 创建的主题 › Apple › 手机复制文字, MBP 就贴不到内容
苹果这同步就是很奇怪,不行就先复制到手机备忘录里,然后 mac 再从备忘录里复制出来。
6 天前
回复了 obiah666 创建的主题 › Claude › 历经千辛万苦终于用上了 opus5.5.
……从来没有提醒我睡觉过。不知道是不是我 CLAUDE.md 里写了不废话的缘故。
@SiWXie #11 FaceID TouchID 这种换设备都是重录的,不能迁移。
目前没有很明显到让我感觉有差异。
另外养孩子未必需要想象成和一个“不讲道理的小祖宗”长期斗争。养育更像是一个已经发展成熟的大脑,带着一个尚在发育的大脑认识世界。

小孩子的认知、语言表达、情绪调节和自我控制都还没有发展完全,所以很多行为会显得不可理喻。但这些行为大多都有原因:可能是困了、饿了、害怕了,可能是环境太陌生,也可能只是情绪已经超过了他当时能够处理的限度。他不是明明懂得道理却故意不听,而是暂时还没有相应的能力。

养育者要做的,不是每一次都靠说理压服他,而是一边处理眼前的问题,一边帮他慢慢建立表达情绪、理解规则和控制行为的能力。理解不等于纵容,该设立的边界仍然要设立,只是没必要把孩子当成一个故意制造麻烦的对手。

家庭的意义之一,是合作着面对这个复杂而混乱的世界。父母先帮助孩子长大,孩子也会让父母重新认识很多东西。当然,这个过程不会因为理解了原理就变得毫无困难,但它未必像想象中那样,是一场持续几十年的无效沟通。如果自己过去和父母的相处中留有遗憾,将来也可以尝试在养育下一代时作出不同的选择。虽然未必能事事如愿,但至少可以更有意识地理解孩子,也重新理解自己。

当然,这并不是说每个人都应该养孩子。其实除了真正爱你、关心你的人,大多数人对你的生活不过是偶尔看一眼、说几句,很快又会回到自己的日子里。大多数时候,聚光灯并没有打在你身上。希望你能活得自在些。
人活着本来就免不了各种麻烦,得吃饱穿暖,还得面对衰老和疾病。像我年轻时从不觉得身体是拖累,年纪大了才发现还得护肤、吃药,光是照顾自己就有不少事情。养孩子也是其中一件,确实要费些心力。

不过对我来说,养育也有麻烦之外的体验。孩子刚出生时会非常依赖你,一个生命这样全然地需要你,这种感受在其他关系里不太容易得到。当然,它在带来幸福感的同时,也意味着一份很长久的责任。至于你想不想体验这些,终究还是要由你自己决定。

我倒不太会仅凭婚礼上到吵闹判断父母有没有尽到教育责任。婚礼毕竟不算特别严肃的场合,家长让一群孩子在一起玩也很正常。七八岁的孩子到了陌生环境,又遇到一群同龄人,一兴奋就容易收不住。毕竟孩子不是只要把道理讲清楚,就会像成年人一样理解并控制自己的行为。教育更多是一个长期陪伴、建立边界和身体力行的过程,也不是靠“讲道理”就够的。
7 天前
回复了 JYL888 创建的主题 › 问与答 › 戒短视频,碎片时间,可以干啥?
vibe 一个小项目?不过也会上瘾……
9 月 21 日
回复了 tbphp 创建的主题 › 程序员 › GPT-Load 接入 Jev:模型及思考强度的自动挡功能
@penisulaS #5 输出也少,就几个数
1  2  3  4  5  6  7  8  9  10 ... 54  
❮ ❯
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2991 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 37ms · UTC 13:09 · PVG 21:09 · LAX 06:09 · JFK 09:09
♥ Do have faith in what you're doing.