べき等操作とは何ですか?
ベストアンサー1
コンピューティングにおいて、べき等な操作とは、同じ入力パラメータで複数回呼び出されても追加の効果がない操作のことです。たとえば、セットから項目を削除することは、セットに対するべき等な操作と見なすことができます。
数学において、べき等演算とはf(f(x)) = f(x)となる演算のことです。たとえば、関数 はすべての に対してabs()
となるためべき等です。abs(abs(x)) = abs(x)
x
これらのわずかに異なる定義は、数学的定義におけるxがオブジェクトの状態を表し、fがそのオブジェクトを変更する可能性のある操作であると考えることで調和できます。たとえば、パイソンset
およびそのdiscard
メソッド。このdiscard
メソッドはセットから要素を削除し、要素が存在しない場合は何もしません。つまり、
my_set.discard(x)
同じ操作を 2 回実行するのとまったく同じ効果があります。
my_set.discard(x)
my_set.discard(x)
べき等操作は、ネットワーク プロトコルの設計でよく使用されます。ネットワーク プロトコルでは、操作を実行する要求が少なくとも 1 回発生することが保証されますが、複数回発生する可能性もあります。操作がべき等である場合、操作を 2 回以上実行しても問題はありません。
Wikipediaの記事を参照冪等性詳細については。
上記の回答には、以前は不正確で誤解を招く例がいくつかありました。2014 年 4 月以前に書かれた以下のコメントは、古いバージョンを参照しています。