問題タブ [try-finally]
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.
c++ - C++ で {} finally{} を試行せずに安全にファイルを閉じる方法は?
次のようなクラスがあるとします。
何かが発生した場合、close() はそれを呼び出しません。正しいのは use try -finally ですが、C++ ではサポートされていません。
C++でどうすればできますか?
java - while ループでセマフォを安全に使用するにはどうすればよいですか?
次のコード フラグメントでは、セマフォを使用して特定のリソースへのアクセスを同期しています。
取得/解放サイクルを try/finally で囲むのが合理的かもしれません。while ループが存在する場合、どうすればこれを行うことができますか?
java - 最終ブロックについて
finally
の目的は、いくつかの命令またはクリーンアップ コードが実行されることを保証することです。finally
しかし、catch ブロックの後にコードを使用または配置することの実際の違いは何ですか。
つまり、使用する必要がある場合の例を教えてくださいfinally
。そうしないと、コードがまったく実行されない可能性があります。
java - try-finally ブロックの単体テスト
getUrl
メソッドのテストはどのように記述すればよいですか?
上記のコードurls
は文字列の配列です。
主な質問は、どのようにテストすればよいcase VALUE_3:
ですか?
初めてテストするindex = 0
が、その後の値はブロックindex
内の別のものに変更されるため、同じユニットテストクラスのfinally
新しい値で再度テストしたい.index
intersystems-cache - Caché ObjectScript の Try-Finally と同等
一般的な Try-Finally 例外クリーンアップ パターンと同等のセマンティクスを探しています。
コードが成功するか失敗するかに関係なく、クリーンアップ手順を実行する必要がありますが、クリーンアップ コードがエラーの報告と処理を妨げてはならないという考えです。まだ問題が発生しており、例外は引き続き伝播するはずです。
私はこのようなものを書きたいと思います:
ただし、ObjectScript の TRY...CATCH 構文は、FINALLY 句をサポートしていません。
特に、finally ブロックによって通常行われるこれらの両方が当てはまることが重要です。
- クリーンアップ コードは、エラーが発生した場合とすべてが正常に実行された場合の両方で、実行が呼び出し元に返される前に常に実行されます。
- エラーが発生した場合、コードの場所、コンテキスト、およびスタックを含む元のエラーが、呼び出しスタックを元の呼び出し元に伝達されます。クリーンアップ コードがデバッグを妨げないようにする必要があります。
通常の TRY...CATCH ブロックを単純に使用することはできません。なぜなら、CATCH は例外を食べて、正しいエラー コンテキストがチェーンに渡されないようにするからです。エラーコンテキストを台無しにすることなく、元の例外を再スローする方法があるのではないでしょうか?
java - ユーザー入力は、Java スレッド内では機能しません。私は何を間違っていますか?
わかりました、単純なチャット サーバーとクライアントを作成しようとしています。このプログラムはチャット サーバーです。実行中のスレッドが 2 つあります。最初のスレッドはすべてのクライアントを処理し、ServerSocket を使用して各新しいクライアントを新しいソケットにバインドし、2 番目のスレッドはユーザーが接続されたクライアントにメッセージを送信できるようにします。ただし、このスレッド内からユーザー入力を取得することはできません! ステートメント「String inputvar = br.readLine()」は実行されません! 私は何を間違っていますか?
c# - catch ブロックを持たない try ブロックを探す方法は?
エラー処理の標準的な方法がない大きな解決策があります。最近、try/finally ブロックを持つ多くのメソッドを見つけました。キャッチブロックなし。このようなもののすべての出現をどのように見つけましたか?