問題タブ [mojolicious-lite]
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.
perl - モジョリシャスでハッシュにアクセスする際のエラー
モジョリシャスでハッシュにアクセスする際に問題が発生しています。
$managers{'IT'}{'name'}
perl では、 print outのようにデータにアクセスできますMike
。モジョリシャスで同じことをするにはどうすればよいですか?
上記はエラーになります。印刷<%== $manage %> gives a HASH(0x1335430)
場所。
perl - SIGINT および SIGTERM シグナルを自分で管理するにはどうすればよいですか?
私Mojolicious::Lite
は、websocket エンドポイントを含む単純なベースのサーバーで作業しています。
Websocket 接続を正常に終了し、クライアント (Java アプリケーション) での例外を回避するために、いくつかの終了シグナルを処理したいと考えています。
を使用して以前のサーバーで慣れていたように、シグナルハンドラーを定義しようとしましたHTTP::Daemon
。問題は、それらが無視されているように見えることです。モジョリシャス層で再定義されたのかもしれませんが、まだ参考文献は見つかりませんでした。
終了メッセージが表示されることを期待していますが、表示されません
SIGINT
サーバーが端末でフォアグラウンドにあるときに入力して直接送信しCtrl-C
ています。サーバーを正常に終了できます(たとえば、cronまたはその他の表示のない手段によって開始された場合)kill <pid>
.
以前のいくつかのサーバーでは、以下を処理することで非常に徹底的にしようとしました:
HUP
設定をリロードするために現在使用されているハイジャックされたシグナルSIGINT
Ctrl+CSIGQUIT
Ctrl-\SIGABRT
例: ライブラリの異常終了SIGTERM
外部終了要求 - 「友好的」kill
(残忍な反対による)kill -9
TSTP
Ctrl-Z でサスペンドCONT
または を使用して Ctrl-Z から再開するfg
場合bg
これらのハンドラーはすべて、プログラムとニーズに応じて、リソースをクリーニングして正常に終了し、データの一貫性を確保したり、外部変更後に構成またはデータ モデルをリロードしたりできます。
Mojo::IOLoop::Signal
«ノンブロッキングシグナルハンドラー»というパッケージを見つけましたが、それは別のもののようです。違う?
これが私の簡略化されたコードです(単純な で実行されますperl ws_store_test.pl daemon
):
ファイル ws_store_test.pl