V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  hallDrawnel  ›  全部回复第 8 页 / 共 9 页
回复总数  170
1  2  3  4  5  6  7  8  9  
2020-04-15 20:05:49 +08:00
回复了 lasuar 创建的主题 Go 编程语言 关于 defer
话说那个小心心是怎么点出来的??网页端可以吗?
2020-04-15 20:00:18 +08:00
回复了 lasuar 创建的主题 Go 编程语言 关于 defer
不会,defer 就是这样设计的,只有在调用 defer 的 goroutine 中 panic 才会执行,其他 goroutine 没有提及,那么就是没有保证。
文档在 https://golang.org/ref/spec#Defer_statements

A "defer" statement invokes a function whose execution is deferred to the moment the surrounding function returns, either because the surrounding function executed a return statement, reached the end of its function body, or because the corresponding goroutine is panicking.

文档指明了在“the corresponding goroutine” panic 的时候才会 defer 。

为了确定 panic 在一个 goroutine 中的行为,文档也描述了,在 https://golang.org/ref/spec#Handling_panics,我把它贴过来

While executing a function F, an explicit call to panic or a run-time panic terminates the execution of F. Any functions deferred by F are then executed as usual. Next, any deferred functions run by F's caller are run, and so on up to any deferred by the top-level function in the executing goroutine. At that point, the program is terminated and the error condition is reported, including the value of the argument to panic. This termination sequence is called panicking.

注意到"in the executing goroutine"的限制,那么就是说 panic 会触发在它所运行的 goroutine 中调用链上的 defer,然后整个程序就退出了。所以 panic 不会管其他 goroutine 中的 defer 。
2020-04-15 19:50:09 +08:00
回复了 zxc1234 创建的主题 程序员 关于 dubbo 的 rpc
理解一下 Remote Procedure Call 的意思就好了。远程过程调用。所以你可用 HTTP 协议来实现远程过程调用,对吧?同样的你也可以用其他协议来实现。
2020-04-15 13:21:37 +08:00
回复了 abcbuzhiming 创建的主题 程序员 似乎计算机数据结构中存在一个明显的“技术断层”?
这个不是断层,这和学数学差不多,都是先学习特例,然后进行抽象的更一般的推广。

学数学的时候基本都是这样的套路。比如先学习一次函数和二次函数的倒数,然后就不会不停的学三四五六次函数的倒数了,而是先把基本函数的倒数学了,然后直接推广到一般函的倒数性质,在更一般的层面的学习。当学习一般函数的倒数时,计算的复杂度就会极速上升,然后会发现有的函数甚至没有倒数,现有的求倒方法也不是在所有函数上都适用。这也就像数据结构中简单的数据结构其“配套”的算法也很简单,更抽象一般的数据结构其“配套”的算法也就更复杂。这样的复杂本质数学带来的,这可能是你觉得难度突然上升的原因,本质只是抽象程度提高了。而人类的大脑并不擅长理解抽象的东西。

数据结构也是一样的,数组链表这样的一纬线性表,是可以通过图论定义的,可以看作特殊的图,数据结构中的树(树也是一个有向无环图,数据结构中接触到的多半是二叉结构,这样的结构在图论中可以精确定义)和图(多半是无环图)也只是图的几个特殊结构,还没有推广到很一般的“图”。图论是离散数学的一个分支,数据结构和算法很多都可以在离散数学里面找到影子。其本质还是一个从特殊到一般的过程。从小到大的数学也基本都是这样教的。
2020-04-14 14:07:20 +08:00
回复了 wangbenjun5 创建的主题 程序员 现在的所谓 AI 推荐算法只能这样吗?
淘宝是真的智障,我买完一个显卡,然后疯狂推显卡,难道我一个普通人整天买显卡?然后无论买完什么都是疯狂的重复推同一样东西,真是醉了。

京东也是一个德行,不过京东做的比淘宝好的就是有一个常购清单的推荐,里面推荐的确实是我会重复买的东西。
2020-04-10 17:29:50 +08:00
回复了 Te11UA 创建的主题 Python Python 怎么优雅地不断检查一个变量是否有值?
建议使用条件变量
2020-04-10 15:21:32 +08:00
回复了 Donne 创建的主题 Go 编程语言 Mac 安装 Goland 2020.1 之后,打开秒退,求助!
一般直接全部干掉再装就行了。
那个距离上班通勤时间多长?
touchbar 在我手里的最常用功能就是锁屏按钮。。。
2020-04-06 11:29:15 +08:00
回复了 noble4cc 创建的主题 Go 编程语言 golang 开发者大部分是从 PHP 和 Python 转过来的吗?
C++转过来的,C++那个编译系统。。。。害还是 go 香。
是的,感觉一天之内的可以这样,之前的时间还是标注具体值更舒服。
2020-03-31 21:44:22 +08:00
回复了 jdz 创建的主题 程序员 为什么分布式软件一般都使用心跳包而不适用 tcp 的保活机制呢
一个是应用层可用,一个是网络层可用,两者不等价。
2020-03-31 12:01:57 +08:00
回复了 MuscleOf2016 创建的主题 程序员 有什么工具,可以让手机的网络请求,完全走电脑?
在电脑开一个代理服务器,手机和电脑在同一个子网,把手机的 Wi-Fi 代理设置为电脑上的代理服务器就行。
2020-03-29 17:37:42 +08:00
回复了 yxs523 创建的主题 程序员 计算机专业学生想换个 MacOS 不知道该怎么选想请教一下大家
按照最高预算顶格买 13/14/16 寸 mbp 。毕竟是学生,你还需要应对一些其他编程需求,air 只是够用。
2020-03-27 13:28:27 +08:00
回复了 kisshere 创建的主题 程序员 想从 Win10 迁移到 manjaro 作为主力,这么做有没有意义?
折腾怕了,现在都是靠虚拟机解决
现在在我厂新来的人基本就是用这个,很爽,公司专门配了支持的云开发机镜像。
debugger 感觉在刷题的时候还有用,其他地方确实是日志很好用。尤其是现在各种操作都是异步或者并发的,靠断点都没法复现。
2020-03-17 15:17:47 +08:00
回复了 Freeego 创建的主题 程序员 国际手机号的验证放在前端做还是后端做?
都要校验,前端校验侧重点是用户体验。后端侧重点就是安全性了。
不要信任任何从前端传过来的数据。
2020-03-12 22:31:11 +08:00
回复了 cf020031308 创建的主题 git Git Commit Message 规范与模板
我们组就在用这个
2020-03-10 16:22:00 +08:00
回复了 yzongyue 创建的主题 程序员 我也终于刷完 MIT 6.824 2020 了
课程的论文都看完了?
1  2  3  4  5  6  7  8  9  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2047 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 35ms · UTC 01:09 · PVG 09:09 · LAX 18:09 · JFK 21:09
Developed with CodeLauncher
♥ Do have faith in what you're doing.