#include #include #include #include #include using namespace emscripten; void thread(void) { EM_ASM({ globalThis.globalProperty = { foo: function(value) { return value; } }; }); val globalProperty = val::global("globalProperty"); auto result0 = globalProperty.call("foo", val("bar")); assert(result0.as() == "bar"); } int main() { std::thread t(thread); std::thread t1(thread); t.join(); t1.join(); return 0; }