私はその後、私は「何false
アーランは:重複した要素をチェック
を返す{Jid, Text}
を読み込む機能を作成し、それがリストのリターン他true
ですでにだ場合、それはリストに追加する必要があり、この機能がないかどうかを確認しようとしていますメートルやっては以下のとおりです。
new_seen() -> [{"[email protected]", "hello"}].
check({Jid, Text}) ->
Term = {Jid, Text},
case lists:member(Term, new_seen()) of
true -> true;
false ->
%% here I want to add {Jid, Text} to new_seen() list.
false
end.
簡単な例:
check({"[email protected]", "hi"}).
%% here should appened {"[email protected]", "hi"} to the list and return false.
%% if I run function again :
check({"[email protected]", "hi"}).
%% here should return True cuz {"[email protected]", "hi"} in the list.
私はDUPLかどうかを確認するためにejabberdでそれを使用したいですメッセージが挿入されます。
あなたのニーズは?そのリストに保持する必要があるデータは何ですか?それは大きなデータベースですか?おそらく[Erlang ETS](http://erlang.org/doc/man/ets.html)や[プロセス辞書](http://erlang.org/doc/reference_manual/processes.html#id87983)をチェックしたいと思うでしょう。 ) –
@A.Saridはいそれは大きなデータベースです。はい、私はetsを使うべきではありません。私もここで尋ねた: http://stackoverflow.com/questions/35958767/erlang-check-duplicate-inserted-elements これを行う方法はありますか? –
あなたの前の質問に答えがあるようです。だから、あなたのデータベースにETSを使わないのはなぜですか?大きなデータベースにはちょうど適合するはずです。 –