問題タブ [gen-server]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
6125 参照

erlang - Erlangはgen_serverを停止します

私はgen_serverを持っています:

今、私はこの世代のサーバーを停止する関数を書きたいと思います。私は持っています:

私はそれを実行します:

だが:

仕事です。

gen_serverを名前で実行し、名前で停止するにはどうすればよいですか?

ありがとうございました。

0 投票する
1 に答える
1614 参照

erlang - Erlangがメッセージをグローバルgen_serverにキャストしました

それは前の質問の続きです

私はgen_serverを持っています:

このgen_serverにメッセージを正しく送信する方法。例:別のファイルで私は次のように作成します:

私のgen_serverファイルには次のものがあります。

gen_serverをテスト名で開始します。

server:start(test)。テスト開始

私が呼び出すとき、gen_server:cast(test, message).それはシェルに何も出力されません。handle_castの呼び出しを確認するにはどうすればよいですか?

ありがとうございました。

0 投票する
1 に答える
6112 参照

erlang - Erlanggen_serverが不正な戻り値をキャストしました

gen_serverにメッセージをキャストしようとしています:

ハンドラーは次のとおりです。

しかし、実行するgen_server:castと、gen_serverはエラーで終了します。

なぜ私は得るのbad_return_valueですか?

0 投票する
1 に答える
305 参照

erlang - Erlangstartgen_serverブロックされたコード

erlangコードにgen_serverがあります。そして、私がそれを実行しようとすると、この後の次のコードは機能しません。例えば:

現在、io:format/1は機能しません。そして、spawnを使用してgen_serverを実行すると、次のようになります。

これでio:formatが機能しました。なんで?

ありがとうございました。

0 投票する
4 に答える
13726 参照

erlang - Erlangのgen_serverで定期的にアクションを実行するにはどうすればよいですか?

さらに、毎分1つのアクションを実行するgen_serverを起動したいと思います。

それをスケジュールするための最良の方法は何ですか?

0 投票する
2 に答える
1680 参照

erlang - erlangでgenサーバーをテストするには?

私は erlang の初心者で、基本的な gen サーバー プログラムを次のように書きます。

ところで:プログラムはコンパイルできますが、それは良いプログラムではありません。何かを印刷して、動作することを確認したいだけです:)

0 投票する
3 に答える
252 参照

erlang - 2つのgen_tcp間のデッドロックの解決

erlangアプリケーションのコードを閲覧しているときに、興味深い設計上の問題に遭遇しました。状況を説明させていただきますが、PIAの関係でコードを投稿できません。

コードは、2つのgen_serverモジュールが何らかのリソースの割り当てを担当するOTPアプリケーションとして構造化されています。アプリケーションはしばらくの間完全に実行され、大きな問題は発生しませんでした。

トリッキーな部分は、最初の人がgen_server2番目の人に十分なリソースが残っているかどうかを確認する必要があるときに始まります。Acallは、(非常に特殊なケースで)call最初のgen_serverに発行するユーティリティライブラリを呼び出す2番目のgen_serverに発行されます。

私はerlangに比較的慣れていませんが、この状況では2つのgen_serverが互いに待機するようになると思います。

これはおそらく設計上の問題ですが、この種の「ハング」を防ぐことができる特別なメカニズムがOTPに組み込まれているかどうかを知りたかっただけです。

どんな助けでもいただければ幸いです。

編集:答えを要約するには:2つが周期的に相互に関係している状況でgen_servercall、アプリケーションの設計にもう少し時間を費やしたほうがよいでしょう。

ご協力いただきありがとうございます :)

0 投票する
3 に答える
1394 参照

erlang - Erlang メッセージで送信できる型の種類は?

主に、Erlang の分散セットアップで関数をメッセージで送信できるかどうかを知りたいです。

マシン 1:

マシン 2:

それは理にかなっていますか?

0 投票する
1 に答える
2652 参照

erlang - Gen_Fsm をいつ使用し、いつ Gen_Server を使用するか?

Gen_Fsm と Gen_Server のドキュメントを調べたところ、多かれ少なかれ、似たような動作をすることがわかりました。私の意見では、ブロードキャストを送信したり、tcp sock をリッスンしたりするためのループ関数が 1 つある場合は、Gen_Fsm を使用するか、gen_server を使用することをお勧めします。私はそれが正しいかどうか知りたいですか?

0 投票する
2 に答える
3762 参照

erlang - gen_server:cast/2 を使用した Erlang 非同期メッセージ処理

gen_server:cast/2 を使用したErlang非同期メッセージ処理の良い例を探しています。

Module:handle_cast/2 を介してリクエストを受信し、それをモジュールのローカル キューに保持し、明示的にメッセージを送信することで、後でリクエストに対応する応答メッセージを送り返す OTP ssh モジュールの例を見てきました。呼び出し元に。読んでみると、コードがほとんど理解できず、アイデアが掴めませんでした。

疑似コードの一部を歓迎します。