- 
                Notifications
    You must be signed in to change notification settings 
- Fork 49
Vroom
JavaScriptEngineSwitcher.Vroom contains a VroomJsEngine adapter (wrapper for the VroomJs version 1.2.3 with support of V8 version 3.17.16.2).
For correct working of the VroomJs on Windows require the Visual C++ Redistributable for Visual Studio 2012 and the Microsoft Visual C++ 2015 Redistributable.
VroomJs package does not contains a native assemblies for Linux and OS X, but you can try to build them by using the following instruction from official repository.
You can specify a settings of JS engine during its registration:
engineSwitcher.EngineFactories
    .AddVroom(new VroomSettings
    {
        MaxYoungSpaceSize = 4194304,
        MaxOldSpaceSize = 8388608
    })
    ;If you manually create an instance of JS engine, then you can pass settings via the constructor:
IJsEngine engine = new VroomJsEngine(
    new VroomSettings
    {
        MaxYoungSpaceSize = 4194304,
        MaxOldSpaceSize = 8388608
    }
);Consider in detail properties of the VroomSettings class:
| Property name | Data type | Default value | Description | 
|---|---|---|---|
| MaxYoungSpaceSize | Int32 | -1 | Maximum size of the young object heap in bytes. | 
| MaxOldSpaceSize | Int32 | -1 | Maximum size of the old object heap in bytes. | 
Currently, VroomJs has the following issues, that do not allow it to fully comply with requirements of the JavaScript Engine Switcher:
- Not supported undefinedtype.
- Errors when calling methods of embedded objects and types, that have several overloaded versions.
- Errors when accessing to the fields of embedded objects.
- Inability to embed the instances of delegates.
- There's no method, that starts the garbage collection.
- Registration of JS engines
- Creating instances of JS engines
- JS engines
- Upgrade guides
- Additional reading and resources