Commit Graph

3 Commits

Author SHA1 Message Date
Brandon Fish e0f5a7ac66
FEATURE: Implement MiniRacer for TruffleRuby (#253) 2022-07-21 15:02:32 +10:00
Sam Saffron d968ee5857
FEATURE: re-add support for single threaded platform
Previously this was removed cause V8 was lagging. Now that we have latest
v8 we can use this feature.
2022-01-10 17:21:40 +11:00
Sam Saffron 86bdc6d942
FEATURE: warn more loudly about forked environments
In single_threaded mode MiniRacer will behave far more reasonably if platform
is initialized in the master process.

Sadly this is only a partial solution since we will hang at:

```
#0  0x00007fe6f037e34d in pthread_cond_broadcast@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007fe6ebc15c05 in v8::platform::DelayedTaskQueue::Terminate() ()
   from /home/sam/Source/mini_racer/lib/mini_racer_extension.so
#2  0x00007fe6ebc14dfd in v8::platform::DefaultWorkerThreadsTaskRunner::Terminate() ()
   from /home/sam/Source/mini_racer/lib/mini_racer_extension.so
#3  0x00007fe6ebc13bd6 in v8::platform::DefaultPlatform::~DefaultPlatform() ()
   from /home/sam/Source/mini_racer/lib/mini_racer_extension.so
#4  0x00007fe6ebc13cde in v8::platform::DefaultPlatform::~DefaultPlatform() ()
   from /home/sam/Source/mini_racer/lib/mini_racer_extension.so
#5  0x00007fe6effb0db7 in __run_exit_handlers () from /usr/lib/libc.so.6
```

Likely some more v8 changes are needed to mitigate the heavily forked use
case.
2020-09-15 10:28:54 +10:00