aboutsummaryrefslogtreecommitdiff
path: root/src/javascript/jsc/javascript.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/javascript/jsc/javascript.zig')
-rw-r--r--src/javascript/jsc/javascript.zig13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/javascript/jsc/javascript.zig b/src/javascript/jsc/javascript.zig
index f775863e0..a5c9f1e01 100644
--- a/src/javascript/jsc/javascript.zig
+++ b/src/javascript/jsc/javascript.zig
@@ -332,6 +332,9 @@ pub const VirtualMachine = struct {
rare_data: ?*JSC.RareData = null,
poller: JSC.Poller = JSC.Poller{},
+ us_loop_reference_count: usize = 0,
+ disable_run_us_loop: bool = false,
+ is_us_loop_entered: bool = false,
pub fn io(this: *VirtualMachine) *IO {
if (this.io_ == null) {
@@ -361,6 +364,16 @@ pub const VirtualMachine = struct {
return this.event_loop;
}
+ pub fn prepareLoop(this: *VirtualMachine) void {
+ var loop = this.uws_event_loop.?;
+ _ = loop.addPostHandler(*JSC.EventLoop, this.eventLoop(), JSC.EventLoop.tick);
+ }
+
+ pub fn enterUWSLoop(this: *VirtualMachine) void {
+ var loop = this.uws_event_loop.?;
+ loop.run();
+ }
+
pub fn onExit(this: *VirtualMachine) void {
var rare_data = this.rare_data orelse return;
var hook = rare_data.cleanup_hook orelse return;