nodejs C++ モジュールを作成していますが、init 関数内で失敗する可能性のあるシステム コールを作成しています。失敗すると、インタープリターに例外をスローして対処したいのですが、代わりにセグフォルトを取得します。正しい動作を取得するにはどうすればよいですか?
たとえば、次のようなものがあります。
//...
void Init(Handle<Object> target) {
if (my_setup_io()==FAIL_CODITION){
ThrowException(Exception::Error(
String::New("Could not init "))); //SEG fault instead of exception
}
target->Set(String::NewSymbol("myFunction"),
FunctionTemplate::New(myFunction)->GetFunction());
}
NODE_MODULE(example, Init)