• 精卫鸟
    2017-11-07
    隐式异常也不要显示的忽略吧,至少记录一条日志,不然会造成异常黑洞。之前帮同事找一个线上小概率问题,所有的日志和异常检测都抓不到,最后对全部进程一起strace,才发现是他catch了异常,啥都没做就return了...

    我们后来揍了丫的
     4
     98
  • 左耳朵
    2017-11-21
    @ stone扎西华丹,是我给极客时间出难题了,我的好些文章里有好多代码,有的会有好些图片,有的会有好些数学公式,这类文章不但都非常难配上语音,而且可能在手机端的排版都会很有问题,难为极客时间的编辑、产品和技术了,这个还望能理解了(后面的文章这样的事你会看到很多)
    
     24
  • majun
    2017-11-07
    期望听您对进程、线程、多进程、多线程的讲解,谢谢!
    
     23
  • xfly
    2017-11-07
    对于上面三种错误的种类来说,程序中的错误,可能用异常捕捉会比较合适;用户的错误,用返回码比较合适;而资源类的错误,要分情况,是用异常捕捉还是用返回值,要看这事是不应该出现的,还是经常出现的。
    ——
    这三种分类和处置方式比较赞同。
    但实际在多人协作项目,或大型项目中多方技术人员要在这个层面理解达成一致不是那么容易的事情。如果依赖于解决架构负债,架构升级来优化,驱动力又似乎不足。
    
     9
  • yun
    2018-03-27
    >异常捕捉的确是对性能有影响的,那是因为一旦异常被抛出,函数也就跟着 return 了。而程序在执行需要处理函数栈上的上下文,这会导致性能变得很慢,尤其是函数栈比较深的时候

    异常抛出和不抛出,函数栈的深度应该差不多吧?函数栈的上下文会有啥不同?
    
     7
  • 徐超军
    2018-11-06
    我们大不部分都是定义自己的异常处理类,然后各种异常都定义好错误码,返回给调用者,这样很清晰的就知道什么问题了
    
     5
  • 呆呆
    2018-11-15
    错误码、异常处理都是在不同场景下的结果,同步可直接获得,异步不能
    
     3
  • stone扎西华丹
    2017-11-13
    货不对板,我们订的时候,看到的可是一个音频产品。
     1
     3
  • 郎哲
    2017-11-07
    不用的语言不同的方式处理错误。Elang 虽有catch,几乎用不到,直接返回值。假设传进来的一定正确,霸道一点不正确请修改正确再传,错误非常容易定位用了catch反而多余隐藏bug,勿隐藏应今早发现今早解决。Go 返回error嵌套多了确实蛋疼不得多写好多if,Java 离了try catch 活不下去。
    
     3
  • LEI
    2018-12-15
    不是java的示例哦,java没有指针一说,看是能看明白意思,示例看着有点感觉自己门外汉,像是自己在学英语,然后讲解的人用另一门类似的语言在解释英语的意思一样,买课程只看了目录,作者简介写了骨灰级程序员,我以为是自己熟悉的java的讲解呢,因为自己是个半路出家的程序员,所以对c还是不太了解,今天只是选了这篇学习,不知道其他的文章是不是也都是C代码做示例讲解的哦,如果都是C的话,学起来就别扭了
    
     2
  • meijing0114
    2018-09-16
    请问所谓对于异常的多态性的catch是指什么呢?是指代码catch Exception对象,实际抛出的可能是ioexception这类吗?
    
     2
  • 皮特尔
    2017-11-07
    赞!迫不及待要看下一篇了。
    
     2
  • 李帅龙
    2017-11-07
    还有一种rust的方式
    
     2
  • 卫什么
    2019-04-04
    1. 通常而言,我们对于在程序中,自己可以预计到自己不期望出现的问题,而且能在问题出现后有替代解决方案的时候,我们就用异常。
    比如当我们处理图片时,我们希望图片的处理是成功的,但是不希望图片处理是失败的。当出现失败时,我们直接在程序中指定重新处理图片的程序,再次运行。

    2. 对于无法修复,无法提供解决方案的问题, 应该使用错误码。 比如用户输入信息的处理,无法修复网络资源的失败
    
     1
  • 恋空
    2019-03-02
    strtol()函数处理错误的那段代码没看懂是什么意思,能仔细说说吗
     2
     1
  • 夏
    2019-01-28
    这些代码例子错漏百出
     2
     1
  • 阿仁🇨🇳
    2019-01-18
    我是个零基础学员,我表示可以看完一遍,但是啥懂不懂 目前就知道以后遇到类似错误纠正的事,那我就再来这里重新查看,寻找答案。哈哈,这算是收获吗?
    
     1
  • weiguozhihui
    2018-10-02
    抛出异常之所以比较慢,有一部分的原因:异常也是一个对象,当产生一个异常时,需要生成一个异常对象(这个生成的异常对象肯定不是存放在栈上,应该可能是存放在堆上),并且将这个异常对象层层往上传递。并且在异常的产生与传递过程中至少需要一次拷贝构造,所以抛出异常要比返回错误码要低效一些。
    
     1
  • krugle
    2018-07-25
    之前网上查这方面的资料,这次在这里看到,太实用了
    
     1
  • 周孟
    2018-06-19
    对于返回错误码的方式是否定义结构体或是类同时包含错误码和错误消息会更好一些,特别是一些业务验证或输入问题上
    
     1
我们在线,来聊聊吧