問題タブ [rethrow]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Javaでキャッチされたさまざまな例外を再スローします
次のダウンロード機能があります。途中でいくつかの可能性のある例外をキャッチし、それらを Exception 型変数に格納します。finally ブロックでクリーンアップした後、元の例外を再スローするか (キャッチされた場合)、独自のカスタム DownloadFailedException をスローします。 . 問題は、関数がスロー例外を宣言していないため、Eclipse が「ハンドルされていない例外タイプの例外」エラーを表示することです。これを行う「いい」方法はありますか?
解決:
c# - try ブロックで例外を再スローする c#
ここでの最初の質問です。私は英語があまり得意ではありません。ご容赦ください。
ユーザーが「ドライバー」とやり取りするスクリプトを作成できるようにするアプリケーションを作成しています。スクリプトとドライバーはすべて別個のクラス ライブラリ dll です。これらのクラスは、渡されるコールバック デリゲートを介して通信するため、コンパイル時にはリンクされません。
例: (スクリプト)-->(通信を処理するプログラム)-->(ドライバ)
今私の質問は:
スクリプトがデリゲートを介してメソッドを実行し、例外をスローすると、例外はスクリプトにバブルアップされ、try-catch ブロックでキャッチされた場合、ユーザーはそれを処理できます。そうでない場合は、例外をキャッチする必要があります。私のプログラム内。
このようにうまく動作しますが、これが正しい方法かどうかはわかりません:
c++ - 2D 配列を作成する例外: C++ で再スローする前にクリーンアップする
2D 配列を動的に作成して返す関数が必要な場合、またはメモリ割り当てが失敗したときに、既に割り当てられている行をクリーンアップした後、情報が失われることなく例外が渡される場合:
したがって、create がスローされた場合、メモリ リークはないと確信できます。しかし、渡された例外 e は、 new によって直接スローされ、キャッチされていない場合と「同じ」であると確信できますか?
例えば
それとも、関数catch (bad_alloc &e)
内に持つ必要がありますか? create
それとも、でのみ機能しcatch (...) { /* do clean-up*/ throw; }
ますか? 単純に再スローしないとスタック トレースが失われるという C# と同じ問題はありthrow;
ますか?
もう 1 つの、より一般的な質問:
error-handling - SSIS パッケージ内からエラーを再スローする
Ive は 2010 SSIS パッケージを取得し、それが他のパッケージを実行します。各パッケージは独立しているため、1 つが失敗しても他のパッケージは引き続き進行できます。私のロジックは、失敗したかどうかにかかわらず、前の実行が完了すると次の実行が実行されることを示しています
私の問題は、エラーが発生したときに、どちらがクラッシュしたか、または他の手がかりを教えてくれない非常に標準的なエラーメッセージが表示されることです。
Integrated Services Dashboard は役に立ちますが、基本的な情報が不足しています。しかし、私が望むのは、パッケージがエラーを再スローするので、さらにiformationを追加できることです。
これはどのように行われますか?
個々のパッケージの Onerror イベントでスクリプト タスクを作成し、エラーを再スローする前に独自の情報を追加しますか?
何をする必要があるかを示す例はありますか? 私はまだ他のパケットを実行し続けたいと思っています。
python - Python 例外を再スローします。どれを捕まえる?
私はpythonの使い方を学んでいます。この記事に出くわしました: http://nedbatchelder.com/blog/200711/rethrowing_exceptions_in_python.html Python での例外の再スローについて説明しています。
例外を再スローするため、「outer catch-except」ステートメントが必要です。しかし今、考えていたのは、do_something_to_apologize()
内部の例外がエラーをスローした場合です。外側の「catch-except」に引っかかるのはどれ?あなたが再投げするものか、それとも投げられるものdo_something_to_apologize()
か?それとも、優先順位が最も高い例外が最初に捕捉されるのでしょうか?
java - catch ブロックですぐに再スローし、finally を使用する
OperationWrapper という名前のログ操作を担当するラッパーがあります。その構造は単純で、次のとおりです。
「o」操作は例外をスローする可能性があるため、logOperationFinished()
メソッドが常に呼び出されるとは限らず、ロギングが正しく動作しません。
また、runOperation()
メソッドを呼び出すさまざまなコンポーネントがこれらの例外を処理します。
常に実行されるようにしたかったのでlogOperationFinished()
、次の構造を実装しました。
logOperationFinished()
常に実行されるようになりましたが、IntelliJ から警告が表示されます。
キャッチされた例外はすぐに再スローされます キャッチされた例外がアクションを実行せずにすぐに再スローされるすべてのcatch
ブロックを 報告します。このような catchブロックは不要であるか、エラー処理が不足しています。
私には、この警告を発行するときに、IntelliJ が finally ブロックを考慮していないようです。
私は何か間違ったことをしていますか、それともこれを達成するためのより良い方法はありますか?
ありがとう。