1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
/*********************************************************************
* NAN - Native Abstractions for Node.js
*
* Copyright (c) 2018 NAN contributors
*
* MIT License <https://github.com/nodejs/nan/blob/master/LICENSE.md>
********************************************************************/
#include <nan.h>
using namespace Nan; // NOLINT(build/namespaces)
class ErrorWorker : public AsyncWorker {
public:
explicit ErrorWorker(Callback *callback) : AsyncWorker(callback) {}
~ErrorWorker() {}
void Execute () {
SetErrorMessage("Error");
}
};
NAN_METHOD(Work) {
Callback *callback = new Callback(To<v8::Function>(info[0]).ToLocalChecked());
AsyncQueueWorker(new ErrorWorker(callback));
info.GetReturnValue().SetUndefined();
}
NAN_MODULE_INIT(Init) {
Set(target
, New("a").ToLocalChecked()
, GetFunction(New<v8::FunctionTemplate>(Work)).ToLocalChecked());
}
NODE_MODULE(asyncworkererror, Init)
|