首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  hheedat  ›  全部回复第 1 页 / 共 9 页
回复总数  168
1  2  3  4  5  6  7  8  9  
22 天前
回复了 banchen 创建的主题 问与答 字节跳动算是大厂吗?
总部
@yulitian888 “带来的是 CPU 承担更多的负载”,CPU 的负载为啥会变高?
字节
50 天前
回复了 imdong 创建的主题 分享创造 🗳V2ex 现在可以支持投票了。
#有意义# 挺有意思的,赞一个👍
63 天前
回复了 xmge 创建的主题 程序员 一句话概括为什么学习 go 语言
@lhx2008 国内不是 90%的 server 都是 centos 吗?跨平台强有啥优势?
98 天前
回复了 newtype0092 创建的主题 Android 曲面屏到底是好设计还是蠢设计?
蠢设计
114 天前
回复了 waibunleung 创建的主题 程序员 PHP 转 go 好还是继续深造?
@codehz 试了下还真是,看来我没有理解这个的原理,我找资料再看看吧[捂脸]
193 天前
回复了 uxff 创建的主题 程序员 CTO 拒绝 golang,坚持 PHP , v 友怎么看
北京的吗?我司招 Golang,需要联系
2019-06-14 14:14:49 +08:00
回复了 drawstar 创建的主题 Apple 两万元, mbp13 寸高配还是 15 寸低配?
@cock 不要紧,用鼠标玩,不触摸电脑就行,让它热
2019-05-27 21:13:05 +08:00
回复了 hheedat 创建的主题 程序员 最近总是收到 portscan 的提示,是公司内网被人入侵了吗?
@xfspace 等你填坑
2019-04-20 17:22:55 +08:00
回复了 hheedat 创建的主题 Apple 苹果隔空投送,是 bug 还是 feature?
@eriko 容量不够又不想花钱,只是打开了照片流
2019-04-20 17:22:20 +08:00
回复了 hheedat 创建的主题 Apple 苹果隔空投送,是 bug 还是 feature?
@IBNOTW 谢谢!
2019-04-19 13:35:55 +08:00
回复了 hheedat 创建的主题 Apple 苹果隔空投送,是 bug 还是 feature?
@Kimyx
@zhaidoudou123
@RHFS
@Wolfsin
@lrigi
你们说的没错,破案了,时间给定位到 2012 年了...照片的时间不对
2019-04-15 09:54:26 +08:00
回复了 bwangel 创建的主题 Go 一条面试题引发的思考 Go 版本
@bwangel
“你说的第二个问题,`i` 确实没有被 mutex 保护。但是由于每个 Goroutine 执行 `i++` 的时候都会首先获取 `holdCount` 的值,如果 holdCount 的值不为 1,那么这个 Goroutine 就会阻塞。所以可以确保同一时刻只会有一个 Goroutine 执行 `i++`”


不能,因为阻塞的 goroutine 可能会被误唤醒
2019-04-12 17:28:50 +08:00
回复了 Fitz 创建的主题 Go 关于 Go pprof 的疑问
线上可以开启,用 http pprof,可以有一个监控程序定时获取线上的 profile 存档,好在异常的时候查询。有些 profile 只有在你调用的时候才会影响性能,有些会一直影响,你自己研究一下吧。
2019-04-12 17:15:29 +08:00
回复了 bwangel 创建的主题 Go 一条面试题引发的思考 Go 版本
https://golang.org/pkg/sync/#Cond.Wait
其实还有一个问题,把 sync.Wait 用 defer 这么封装是否会有问题? wait 在阻塞的时候会先解锁,唤醒的时候会先加锁,现在唤醒之后立马就释放锁了,相当于锁的是 fl.holdCount,而不是 i,这样可能会出问题吧,i++的时候
2019-04-12 16:53:48 +08:00
回复了 bwangel 创建的主题 Go 一条面试题引发的思考 Go 版本
func threadPrint(threadNum int, threadName string, mu sync.Locker) {
for i < 9 {
fmt.Println("......", threadNum, threadName, "S-1")
mu.Lock()
if i >= 9 {
mu.Unlock()
continue
}
if i < 3 && i%3 != threadNum {
fmt.Println("......", threadNum, threadName, "S-2")
mu.Unlock()
continue
}

fmt.Printf("%d: %s\n", i, threadName)
i += 1
fmt.Println("......", threadNum, threadName, "S-3")
mu.Unlock()
}
end <- struct{}{}
}

...... 0 A S-1
0: A
...... 0 A S-3
...... 0 A S-1
...... 0 A S-2
...... 0 A S-1
...... 0 A S-2
...... 2 C S-1
...... 1 B S-1
...... 2 C S-2
...... 2 C S-1
1: B
...... 1 B S-3
...... 1 B S-1
2: C
...... 2 C S-3
...... 2 C S-1
...... 0 A S-1
3: B
...... 1 B S-3
...... 1 B S-1
4: C
...... 2 C S-3
...... 2 C S-1
5: A
...... 0 A S-3
...... 0 A S-1
6: B
...... 1 B S-3
...... 1 B S-1
7: C
...... 2 C S-3
...... 2 C S-1
8: A
...... 0 A S-3


打印一些状态可以看出一些端倪
1  2  3  4  5  6  7  8  9  
关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1082 人在线   最高记录 5168   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 36ms · UTC 19:41 · PVG 03:41 · LAX 12:41 · JFK 15:41
♥ Do have faith in what you're doing.