LoginSignup
4
2

More than 5 years have passed since last update.

nodeのprocessが終わっちゃう or 終わらない

Last updated at Posted at 2013-10-07

nodeでシェルスクリプト書いてたら、標題の通りのことが起きたのでちょっと調べた。

  • DBにクエリ投げてるのにプロセスが閉じちゃう!
  • callbackが来るまでtimerで無理矢理プロセス延命してたら、いつまでも終わらない!

という感じだったので、
ともかくnodeのプロセスが終わるときの条件を復習。

後半のややこしいはなしはいいんですが、
ともかくhandleあるいはreqというものが生きてると、プロセスは終了されないらしい。

つまり終わっちゃうということは、handleがない…というところまで調べて、

いま書いてるシェルスクリプトで、 DBへのconnectionをopenしてなかった ことに気づきましたーあははは。

  • connectionのhandleが作られてないので、イベントループ終了しちゃう
  • connectionないので、クエリ返ってこない
    • connectionないときエラー吐いてくれないんかな。。

笑っちゃうけど、ありがちなので気をつけたい。
いまイベントループを維持しているのはどのhandleなのかとか、
なるべく常に意識できてたほうがよさそう。

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2