diff options
author | Joyee Cheung <joyeec9h3@gmail.com> | 2019-03-23 07:39:52 +0800 |
---|---|---|
committer | Joyee Cheung <joyeec9h3@gmail.com> | 2019-04-06 12:01:45 +0800 |
commit | 864860e9f3d4eed0b0b81af55197d7e525ea6306 (patch) | |
tree | ed0c9cbc1cea99323cd4fa4c5385a11b262be8ee /src/node_internals.h | |
parent | baa54a5ae78ff04a3e8d8ac97c052304a6f6c18c (diff) | |
download | node-new-864860e9f3d4eed0b0b81af55197d7e525ea6306.tar.gz |
src: port coverage serialization to C++
This patch moves the serialization of coverage profiles into
C++. With this we no longer need to patch `process.reallyExit`
and hook into the exit events, but instead hook into relevant
places in C++ which are safe from user manipulation. This also
makes the code easier to reuse for other types of profiles.
PR-URL: https://github.com/nodejs/node/pull/26874
Reviewed-By: Ben Coe <bencoe@gmail.com>
Diffstat (limited to 'src/node_internals.h')
-rw-r--r-- | src/node_internals.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/node_internals.h b/src/node_internals.h index e299d87730..7452dc05e9 100644 --- a/src/node_internals.h +++ b/src/node_internals.h @@ -308,15 +308,26 @@ v8::MaybeLocal<v8::Value> ExecuteBootstrapper( std::vector<v8::Local<v8::String>>* parameters, std::vector<v8::Local<v8::Value>>* arguments); void MarkBootstrapComplete(const v8::FunctionCallbackInfo<v8::Value>& args); + +#if HAVE_INSPECTOR namespace profiler { void StartCoverageCollection(Environment* env); +void EndStartedProfilers(Environment* env); } +#endif // HAVE_INSPECTOR + #ifdef _WIN32 typedef SYSTEMTIME TIME_TYPE; #else // UNIX, OSX typedef struct tm TIME_TYPE; #endif +double GetCurrentTimeInMicroseconds(); +int WriteFileSync(const char* path, uv_buf_t buf); +int WriteFileSync(v8::Isolate* isolate, + const char* path, + v8::Local<v8::String> string); + class DiagnosticFilename { public: static void LocalTime(TIME_TYPE* tm_struct); |