問題タブ [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.

0 投票する
1 に答える
886 参照

java - Javaでキャッチされたさまざまな例外を再スローします

次のダウンロード機能があります。途中でいくつかの可能性のある例外をキャッチし、それらを Exception 型変数に格納します。finally ブロックでクリーンアップした後、元の例外を再スローするか (キャッチされた場合)、独自のカスタム DownloadFailedException をスローします。 . 問題は、関数がスロー例外を宣言していないため、Eclipse が「ハンドルされていない例外タイプの例外」エラーを表示することです。これを行う「いい」方法はありますか?

解決:

0 投票する
2 に答える
475 参照

c# - try ブロックで例外を再スローする c#

ここでの最初の質問です。私は英語があまり得意ではありません。ご容赦ください。

ユーザーが「ドライバー」とやり取りするスクリプトを作成できるようにするアプリケーションを作成しています。スクリプトとドライバーはすべて別個のクラス ライブラリ dll です。これらのクラスは、渡されるコールバック デリゲートを介して通信するため、コンパイル時にはリンクされません。

例: (スクリプト)-->(通信を処理するプログラム)-->(ドライバ)

今私の質問は:

スクリプトがデリゲートを介してメソッドを実行し、例外をスローすると、例外はスクリプトにバブルアップされ、try-catch ブロックでキャッチされた場合、ユーザーはそれを処理できます。そうでない場合は、例外をキャッチする必要があります。私のプログラム内。

このようにうまく動作しますが、これが正しい方法かどうかはわかりません:

0 投票する
2 に答える
710 参照

c++ - 2D 配列を作成する例外: C++ で再スローする前にクリーンアップする

2D 配列を動的に作成して返す関数が必要な場合、またはメモリ割り当てが失敗したときに、既に割り当てられている行をクリーンアップした後、情報が失われることなく例外が渡される場合:

したがって、create がスローされた場合、メモリ リークはないと確信できます。しかし、渡された例外 e は、 new によって直接スローされ、キャッチされていない場合と「同じ」であると確信できますか?

例えば

それとも、関数catch (bad_alloc &e)内に持つ必要がありますか? createそれとも、でのみ機能しcatch (...) { /* do clean-up*/ throw; }ますか? 単純に再スローしないとスタック トレースが失われるという C# と同じ問題はありthrow;ますか?

もう 1 つの、より一般的な質問:

0 投票する
1 に答える
137 参照

error-handling - SSIS パッケージ内からエラーを再スローする

Ive は 2010 SSIS パッケージを取得し、それが他のパッケージを実行します。各パッケージは独立しているため、1 つが失敗しても他のパッケージは引き続き進行できます。私のロジックは、失敗したかどうかにかかわらず、前の実行が完了すると次の実行が実行されることを示しています

私の問題は、エラーが発生したときに、どちらがクラッシュしたか、または他の手がかりを教えてくれない非常に標準的なエラーメッセージが表示されることです。

Integrated Services Dashboard は役に立ちますが、基本的な情報が不足しています。しかし、私が望むのは、パッケージがエラーを再スローするので、さらにiformationを追加できることです。

これはどのように行われますか?

個々のパッケージの Onerror イベントでスクリプト タスクを作成し、エラーを再スローする前に独自の情報を追加しますか?

何をする必要があるかを示す例はありますか? 私はまだ他のパケットを実行し続けたいと思っています。

0 投票する
2 に答える
52731 参照

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()か?それとも、優先順位が最も高い例外が最初に捕捉されるのでしょうか?

0 投票する
3 に答える
3937 参照

java - catch ブロックですぐに再スローし、finally を使用する

OperationWrapper という名前のログ操作を担当するラッパーがあります。その構造は単純で、次のとおりです。

「o」操作は例外をスローする可能性があるため、logOperationFinished()メソッドが常に呼び出されるとは限らず、ロギングが正しく動作しません。

また、runOperation()メソッドを呼び出すさまざまなコンポーネントがこれらの例外を処理します。

常に実行されるようにしたかったのでlogOperationFinished()、次の構造を実装しました。

logOperationFinished()常に実行されるようになりましたが、IntelliJ から警告が表示されます。

キャッチされた例外はすぐに再スローされます キャッチされた例外がアクションを実行せずにすぐに再スローされるすべてのcatch
ブロックを 報告します。このような catchブロックは不要であるか、エラー処理が不足しています。

私には、この警告を発行するときに、IntelliJ が finally ブロックを考慮していないようです。

私は何か間違ったことをしていますか、それともこれを達成するためのより良い方法はありますか?

ありがとう。