exception-handling相关内容
我有以下代码: HttpWebRequest 请求 = (HttpWebRequest)WebRequest.Create(url);request.Method = "头";request.Credentials = MyCredentialCache;尝试{请求.GetResponse();}抓住{} 如何捕获特定的 404 错误?WebExceptionStatus.ProtocolEr
..
我的 iPhone 应用程序发生了一次崩溃,它确实引发了 NSException.崩溃报告在错误在哪里以及究竟是什么导致错误方面完全模棱两可.我是否有一种聪明的方法可以在某处设置顶级异常处理程序以查看导致它的原因?我自己无法复制这个问题,但我的一些测试版用户肯定可以. 处理此类问题的明智方法是什么? 解决方案 你好像在问两个问题:如何设置顶级异常处理程序;以及如何处理确定根本原因的问
..
我维护一个 Web 应用程序,该应用程序有一个带有 JSF 标记
..
我是 Java 新手,而且对编程有点陌生(我知道直接进入 Java 可能不是最好的主意.)无论我如何尝试在我的程序.我正在做一个简单的计数程序,想在每个数字之间添加一秒的延迟,这是我目前拥有的代码: import java.lang.*;公共课柜台{公共静态无效主要(字符串[]参数){诠释我;对于 (i = 0; i 对 Thread.sleep() 的调用不会编译.javac 编译器说,“
..
我的应用程序中的所有服务调用都是作为任务实现的.当某个任务出现故障时,我需要向用户显示一个对话框来重试上次失败的操作.如果用户选择重试,程序应该重试该任务,否则程序的执行应该在记录异常后继续.任何人对如何实现这个功能有一个高层次的想法? 解决方案 UPDATE 5/2017 C# 6 异常过滤器使 catch 子句更加简单: 私有静态异步任务重试(Func fu
..
在 Python 中,一个 try 语句是否可以有多个 except 语句?如: 尝试:#某事1#something2除了 ExceptionType1:#返回xyz除了 ExceptionType2:#return abc 解决方案 是的,有可能. 尝试:...除了 FirstException:handle_first_one()除了 SecondException:handle_se
..
boost::asio::io_service::run() 在发生错误时抛出 boost::system::system_error 异常.我应该处理这个异常吗?如果是,怎么办? 我的 main.cpp 代码是这样的: main(){boost::asio::io_service 队列;boost::asio::io_service::work 工作(队列);{//设置一些处理程序...
..
我的 Go 函数应该返回一个值,但是在调用库函数时它可能会出现恐慌.我可以使用 recover() 在延迟调用中捕获它,但在这种情况下如何返回值? func MyFunc() 字符串{延迟函数(){如果错误:=恢复();错误!= 零{//如果发生恐慌,我该怎么做才能让 MyFunc() 返回一个值?}}()SomeFuncThatMayPanic()返回“正常返回值"//如果出现恐慌,如何返回“
..
为什么我不能在下面的代码中创建 CroppedBitmap?我遇到了一个例外: 调用线程无法访问此对象,因为另一个线程拥有它. 如果我将代码更改为 CroppedBitmap cb = new CroppedBitmap(new WriteableBitmap(bf), new Int32Rect(1, 1, 5, 5)); 异常消失了吗?为什么? 代码 1,cb.Freez
..
我们正在努力制定正确处理应用程序异常的策略.这是我们的目标(总结): 只处理特定的例外情况. 只处理您可以纠正的异常情况 只记录一次. 我们提出了一个涉及通用应用程序特定异常的解决方案,并在一段代码中像这样工作: 尝试{//做任何事}捕获(ArgumentNullException ane){//处理,可选择记录并继续}捕获(AppSpecificException){//重新抛
..
基本上我听说某些条件会导致 .net 吹过 finally 块.有谁知道这些条件是什么? 解决方案 两种可能: StackOverflowException ExecutionEngineException 当存在 StackOverflowException 时,finally 块将不会被执行,因为堆栈上没有空间可以执行更多代码.当存在 ExecutionEngineExc
..
我在另一个问题中看到了这个提示,想知道是否有人可以向我解释这到底是如何工作的? try { 返回 x;} 最后 { x = null;} 我的意思是,finally 子句真的执行 after return 语句吗?这段代码有多线程不安全?你能想到任何可以做的额外黑客行为吗?这个 try-finally 破解? 解决方案 不 - 在 IL 级别,您不能从异常处理块内部返回.它本质上将它存
..
我在 python 代码中使用的第三方库(用 C 编写)发出警告.我希望能够使用 try except 语法来正确处理这些警告.有没有办法做到这一点? 解决方案 要将警告作为错误处理,只需使用以下代码: 导入警告警告.filterwarnings(“错误") 在此之后,您将能够捕获与错误相同的警告,例如这将起作用: 尝试:some_heavy_calculations()除了运行时警
..
Python中的raise和raise from有什么区别? 尝试:引发 ValueError例外为 e:引发索引错误 产生的结果 Traceback(最近一次调用最后一次): 中的文件“tmp.py"第 2 行引发 ValueError值错误在处理上述异常的过程中,又出现了一个异常:回溯(最近一次通话最后): 中的文件“tmp.py"第 4 行引发索引错误索
..
通常我将我所有的 Main 方法代码放在一个 try/catch 块中,如下所示: public static void Main(string[] args){尝试{//代码}捕获(异常 e){//代码}} 我这样做是为了以防任何异常从程序逻辑的其余部分中溜走,从而允许我做一些事情,例如将其显示到控制台、将其记录到文件等.但是,我被告知这是不好的做法. 你认为这是不好的做法吗?
..
从析构函数抛出异常的主要问题是,在调用析构函数的那一刻,另一个异常可能“正在运行"(std::uncaught_exception() == true),所以它是在这种情况下该怎么做并不明显.用新异常“覆盖"旧异常将是处理这种情况的可能方法之一.但决定在这种情况下必须调用 std::terminate(或另一个 std::terminate_handler). C++11 通过 std::n
..
我正在为一位朋友审查一些代码,并说他在 try-finally 块中使用了 return 语句.即使 try 块的其余部分没有触发,Finally 部分中的代码是否仍然触发? 例子: public bool someMethod(){尝试{返回真;抛出新异常(“测试");//似乎没有被执行}最后{//有问题的代码}} 解决方案 简单回答:是的.
..
我想知道关于 C++ 的 try/catch/finally 块.我见过这些带有两个下划线的命令,比如 __try.但是 MVSC 2010 项目也可以在没有下划线的情况下运行.那么什么时候需要这些下划线呢? 解决方案 在 Windows 上,操作系统级别支持异常.它们被称为结构化异常处理 (SEH),大致相当于 Unix 信号.为 Windows 生成代码的编译器通常利用这一点,他们使用
..
我想知道最好的方法是“如果所有其他方法都失败了". 我的意思是,您在应用程序中处理尽可能多的异常,但仍然肯定会有错误,所以我需要有一些东西捕获所有未处理的异常,以便我可以收集信息并存储将它们保存在数据库中或将它们提交到 Web 服务. AppDomain.CurrentDomain.UnhandledException 事件是否捕获所有内容?即使应用程序是多线程的? 旁注:Win
..
在学习 Java 时,我经常偶然发现这个错误.它是这样的: 未报告的异常 java.io.FileNotFound 异常;必须被抓住或宣布被扔掉. java.io.FileNotFound 只是一个例子,我见过很多不同的.在这种特殊情况下,导致错误的代码是: OutputStream out = new BufferedOutputStream(new FileOutputStrea
..