こんにちは、私はそのようなコードを持っていると想像してください:
0. void someFunction()
1. {
2. ...
3. if(x>5)
4. doSmth();
5.
6. writeDataToCard(handle, data1);
7.
8. writeDataToCard(handle, data2);
9.
10. incrementDataOnCard(handle, data);
11. }
事は次のとおりです。手順 6 と 8 が実行された後、誰かがカードを削除したと言うと、操作 10 は正常に完了しません。しかし、これは私のシステムのバグになります。つまり、6 と 8 が実行された場合は、10 も実行する必要があります。このような状況に対処するにはどうすればよいですか?
簡単な要約: ステップ 8 の後で、誰かが私の物理カードを取り外す可能性があります。つまり、ステップ 10 に到達することはなく、システムに問題が発生する可能性があります。つまり、カードは不完全なデータで初期化されます。