問題タブ [exception-safety]

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 投票する
0 に答える
275 参照

rust - Drop がパニックになった場合、どうすればよいですか? とにかく他のリソースを解放できますか?

外部の理由MaybeUninitでを使用する単純なリソースがあります。unsafe

たぶん、T::drop()パニックになればRefMutが漏れて中毒になると思いRefCellます。どうすればこれを防ぐことができますか?そうすることは慣用的でしょうか? ドキュメントには次のように記載されています。

a will が巻き戻されるときpanic!に呼び出されることを考えると、実装内のいずれかが中止される可能性があります。droppanic!drop

しかし、その「可能性が高い」だけでは、このシナリオを予想する必要がある (そして処理できる) かどうかが十分に明確になりません。

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

c++ - 新しいオペレーターの例外的な安全性

これは、libstdc++ の new 演算子の実装です。

コンストラクターの例外が割り当てられたメモリを解放することを誰が保証しますか?

Upd:コメンテーターに感謝します - 実際には、新しい式の例外安全性を意味していました。