V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  supuwoerc  ›  全部回复第 1 页 / 共 87 页
回复总数  1733
1  2  3  4  5  6  7  8  9  10 ... 87  
2 天前
回复了 Myst 创建的主题 职场话题 和能力差的同事配合,真是折磨人!
@supuwoerc 最主要还算错了,业务发现丢数据找过来了才知道... 离谱
2 天前
回复了 Myst 创建的主题 职场话题 和能力差的同事配合,真是折磨人!
我正在修改一个离职外包的代码,for 循环去请求数据,页码+1 都能写一段公式,根据数量求出来下一页的页码...
2 天前
回复了 wxm 创建的主题 职场话题 已经 4 年没涨过工资了,大家呢?
每年 2000+
个人开发直接翻译就行,商用的话最好严谨点避免歧义,歧视和额外的一些法律风险。
1 月 27 日
回复了 hugozach 创建的主题 问与答 小白请教一下 这个网站怎么实现的?
直接无头浏览器🐶
1 月 27 日
回复了 ceclinux 创建的主题 问与答 求推荐适合后端开发的 ai 教程
回老家养大鹅
你是 B 站的那个 UP 吗
1 月 8 日
回复了 owlzhang95 创建的主题 生活 打呼噜影响家庭生活状态了
减肥
牛,刚刚生成了一个简单的课程,看起来很棒
@supuwoerc 是的,需要补充下,atomic.StoreUint32(&o.done, 1)应该 defer 执行,避免 happens before
存在 data race ,你想要双重检查标识位,但是第一次检查没在加锁之后,是存在潜在问题的。

问题出现在 done uint32 的读写并不是原子的,你需要换成原子读写,你这段代码和 sync.Once 的区别就是这里。

```
func (o *Once) Do(f func()) {
if atomic.LoadUint32(&o.done) == 1 {
return
}

o.m.Lock()
defer o.m.Unlock()

fmt.Println("bing: ", o.done)

if atomic.LoadUint32(&o.done) == 0 {
atomic.StoreUint32(&o.done, 1)
f()
}
}
```
@supuwoerc 对我来说是吃灰了,对我爸来说还没吃灰,估计过段时间也会走向吃灰
ipad 2019 年买的,虽然自己不用了,但是给我爸看视频用了,屏幕大,不用盯着手机戴着老花镜看了。
不知道有没有人专门弄虚拟机去薅骗子🐶
1 月 4 日
回复了 albin504 创建的主题 程序员 笔记本上语音输入使用豆包体验真不错
别吵!我在豆包!🐶
1 月 4 日
回复了 TingLen 创建的主题 React 关于低代码的选型,请佬们帮我分析一下
都接触过,都不推荐,这玩意是真的恶心,除了那种临时搭建问卷/广告之类的地方,不建议任何业务使用🤢
2025 年 12 月 30 日
回复了 muluc 创建的主题 问与答 你们的女朋友也这样吗?
楼主赶紧转行月嫂赛道吧!天赋异禀了属于是
1  2  3  4  5  6  7  8  9  10 ... 87  
关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   882 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 43ms · UTC 19:30 · PVG 03:30 · LAX 11:30 · JFK 14:30
♥ Do have faith in what you're doing.