1

操作中のノードjsモジュールは、リモートサービス上のいくつかのリソースを要求します。これらのリソースは、終了時に解放する方が適切です。私たちは非常に素晴らしいものがあることを知っています:

process.on('exit', function() {
    // ...
});

しかし、非同期操作が完了するのを待たないと言われています。それで、問題は回避策があるかどうかです(それはかなり普及している使用例なので、いくつかあるはずです)?たぶん、別のプロセスか何かを始めることができますか?..

4

2 に答える 2

1

私が見た唯一の回避策は、待機ループを追加し、プロパティがグローバルに更新されるまで.on('exit'、関数から終了/復帰しないことです。完全にボッジジョブの設計上、非常に悪い習慣ですが、私は短い呼び出しで機能することを確認しました(タイムアウトがあると思いますが、詳細を調べる必要はありませんでした)。

于 2012-06-30T09:23:31.600 に答える
1

この投稿のようにシグナルon('exit'をリッスンすることで、)の前にクリーンアップを実行できる/実行する必要があると思います。ctrl-c

于 2012-06-30T09:26:02.993 に答える