タグ

Dに関するku0522のブックマーク (1)

  • 例外安全 - プログラミング言語 D (日本語訳)

    例外安全なプログラミングとは、 例外を投げる可能性があるコードが実際に例外を投げた場合に、 プログラムの状態が壊れずリソースもリークしないように作るプログラミングのことを言います。 これを正しく実現するには、既存の方法では、複雑で読みにくく脆いコード を書かねばなりませんでした。結果として、例外安全性に関して バグが残っていることが非常に多かったり、そもそも手間を省くために 例外安全が完全に無視されたりしてきました。 例として、数行の文を実行するあいだMutexをロックして、 終わったら解放するというケースを考えてみましょう: void abc() { Mutex m = new Mutex; lock(m); // mutexをロック foo(); // 処理を行う unlock(m); // mutexをアンロック } >foo() が例外を投げると、abc() は例外による巻き戻しで

  • 1