データベース トランザクションの ACID プロパティの A からのアトミック性は、データベースで実行される各トランザクションが 0 または 1 の 2 進数システムのようなものであり、すべてまたは何もないことを示しています。
Java や C# などのプログラミング言語、またはその他の汎用言語で同じことを達成することは可能ですか? 例えば
public static Ticket GetTicket(string filePath) {
counter++;
Application app = new Application(filePath);
.
.
.
おそらく、私は悪い例を挙げていますが、アイデアを得るにはこれで十分だと思います。ここで、Application
オブジェクトを作成している行で例外がスローされた場合、アプリケーションの実行が停止し、静的変数の状態counter
が既に変更され、システムの状態が変化したと想像してください。例外がスローされる前に実行されたステートメントによる損害を防ぐ方法はありますか?