Tag: 线程exception

连接失败:ECONNREFUSED

我正在开发一个应用程序,我想我想要做的就是从android中的服务器数据库接收数据。 所以我开始运行一些教程。 我发现一个正在做我想要的东西。 但是我得到: detailMessage "failed to connect to localhost/127.0.0.1 (port 8080): connect failed: ECONNREFUSED (Connection refused)" (id=830021648792) 本教程的全部代码在这里链接 错误发生在: OutputStreamWriter out = new OutputStreamWriter(connection.getOutputStream()); 我检查了: 防火墙被禁用 平正在工作 连接string与从服务器pipe理接口 – http://localhost:8080/Requestor/RQSRV运行servlet – servlet正在运行时http://localhost:8080/Requestor/RQSRV 我的configuration: 服务器:玻璃鱼4.0 Android应用程序 – 在Eclipse中开发 Servlet – 在NetBeans中开发

c ++exception类devise

对于一组exception类,一个好的devise是什么? 我看到围绕什么exception类应该和不应该做什么的各种东西,但不是一个简单的devise,易于使用和扩展,做这些事情。 exception类不应该抛出exception,因为这会直接导致进程终止,而没有任何logging错误的机会。 它需要能够得到一个用户友好的string,最好是本地化到他们的语言,所以如果它不能从错误中恢复,那么在应用程序终止之前有一些东西要告诉他们。 在堆栈展开时,需要添加信息,例如,如果xmlparsing器无法parsinginputstream,可以添加源文件或networking等。 exception处理程序需要轻松访问处理exception所需的信息 将格式化的exception信息写入日志文件(英文,所以在这里没有翻译)。 让1和4一起工作是我遇到的最大的问题,因为任何格式化和文件输出方法都可能失败。 编辑:所以看了几个类的exception类,并在尼尔链接到的问题,似乎是普遍的做法,完全忽略项目1(从而推动推荐),这似乎是一个相当糟糕的主意我。 无论如何,我想id也张贴我正在考虑使用的exception类。 class Exception : public std::exception { public: //enum for each exception type, which can also be used to determin //exception class, useful for logging or other localisation methods //for generating a message of some sort. enum ExceptionType { //shouldnt ever be thrown UNKNOWN_EXCEPTION = 0, […]

实时环境中的exception仍然不受欢迎?

几年前,我被告知,在embedded式系统或(非Linux)内核开发C ++ – 例外 的实时应用程序是不受欢迎的。 (也许这个教训是从gcc-2.95之前的)。 但是我也知道,exception处理已经变得更好了。 那么,在实际应用环境中, C ++就是例外情况 完全不需要的? 甚至通过编译器开关closures? 或非常仔细可用? 或者现在处理得如此之好,以至于几乎可以自由使用它们,还有一些事情要考虑? C ++ 11是否改变了这一点? 更新 :exception处理是否真的需要启用RTTI (就像一个回答者build议的那样)? 是否有dynamic演员参与,或类似?

exception传播指导(Java)

在Java中有exception传播的指导吗? 何时向方法签名添加exception? 例如:如果只有一个基本程序资源丢失时才会抛出exception,并且只能在顶层处理exception,那么是否通过使用此exception的所有方法通过使用erring方法的所有方法来传播它? 有什么好的做法吗? 任何不好的做法? 我很抱歉,如果我是模糊的,但我只是寻找一些关于例外编程风格(一般)的build议。

为什么不等待Task.WhenAll抛出一个AggregateException?

在这个代码中: private async void button1_Click(object sender, EventArgs e) { try { await Task.WhenAll(DoLongThingAsyncEx1(), DoLongThingAsyncEx2()); } catch (Exception ex) { // Expect AggregateException, but got InvalidTimeZoneException } } Task DoLongThingAsyncEx1() { return Task.Run(() => { throw new InvalidTimeZoneException(); }); } Task DoLongThingAsyncEx2() { return Task.Run(() => { throw new InvalidOperation();}); } 我期待WhenAll创build并抛出一个AggregateException ,因为至less有一个它正在等待的任务抛出一个exception。 相反,我收回了其中一个任务抛出的单个exception。 WhenAll不总是创build一个AggregateException ?

Exception.getMessage()为null

在我的Java代码中,它正在检查!null条件并抛出一个Exception 。 例如 try { if (stud.getCall() != null) acc.Call = stud.getCall().toString(); else throw new Exception("Data is null"); } catch (Exception e) { logger.error("Some Error" + e.getMessage()); throw new Exception("Please check the Manatadatory Field is Missing" + e.getMessage()); } 但在日志中我得到: Some Error null 为什么e.getMessage null ?

Haskell接近error handling

这里没有任何争论,Haskell中有各种机制来处理错误并正确处理它们。 错误monad,可能,exception等 那么为什么它比其他语言中的Haskell编写exception容易的代码更简单呢? 比方说,我想写一个命令行工具,处理在命令行上传递的文件。 我想: 提供validation文件名 validation文件是可用的和可读的 validation文件有有效的标题 创build输出文件夹并validation输出文件是可写的 处理文件,错误parsing错误,不变的错误等 输出文件,写入错误,磁盘已满等错误 所以一个非常直接的文件处理工具。 在Haskell中,我会用一些单子组合来包装这个代码,使用Maybe和Either,并根据需要翻译和传播错误。 最后,这一切都得到了一个IO monad,我可以输出状态给用户。 用另一种语言,我只是抛出一个exception,并抓住适当的地方。 直截了当。 我不花很多时间在认知上,试图解开我需要的机制。 我只是接近这个错误,或者这是否有这种感觉的一些内容? 编辑:好吧,我收到反馈告诉我,这只是感觉更难,但实际上不是。 所以这里是一个痛点。 在Haskell中,我正在处理monads堆栈,如果我必须处理错误,我要为这个monad堆栈添加另一个图层。 我不知道为了编译代码而添加了多less个提升语句和其他语法垃圾,但却增加了零语义含义。 没有人觉得这增加了复杂性?

在android上使用全局exception处理

有没有代码示例,或者有关如何使用Thread.setDefaultUncaughtExceptionHandler方法的教程? 基本上我试图显示一个自定义提醒对话框,每当引发exception,在我的应用程序。 是否有可能做到这一点? 我知道如果在UI线程中抛出exception,在屏幕上显示某些内容会有点棘手,但是我不知道有什么解决办法。

为什么使用终于在尝试…赶上

我看到Finally in Try .. Catch将总是在执行try catch块的任何部分之后执行。 是否有什么不同,只是跳过Finally一节,只是之后,在try catch块之外运行? 示例1,Try … Catch … Finally … End Try Try 'Do something Catch ex As Exception 'Handle exception Finally 'Do cleanup End Try 例2,尝试…赶上…结束尝试…做最后的东西外面 Try 'Do something Catch ex As Exception 'Handle exception End Try 'Do cleanup

Swift-3错误:' – :无法识别的select器

以下代码与旧版本很好的结合在一起。 这是String的扩展 func stringByConvertingHTML() -> String { let newString = replacingOccurrences(of: "\n", with: "<br>") if let encodedData = newString.data(using: String.Encoding.utf8) { let attributedOptions : [String: AnyObject] = [ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType as AnyObject, NSCharacterEncodingDocumentAttribute: String.Encoding.utf8 as AnyObject ] do { let attributedString = try NSAttributedString(data: encodedData, options: attributedOptions, documentAttributes: nil) //Crash here return attributedString.string } catch […]