Page MenuHomePhabricator

Test That function-schemata's Mutex Implementation Works in QuickJS
Closed, InvalidPublic

Description

Description

Write a test that runs Mutex code inside QuickJS, ensuring that the async/await-based Mutex works. Because QuickJS's polling is fundamentally different from V8's, there may be different atomicity guarantees (or lacks thereof!) around coroutines.

Desired behavior/Acceptance criteria (returned value, expected error, performance expectations, etc.)

  • Mutex acquisition and release is tested in QuickJS

Completion checklist

Event Timeline

cmassaro renamed this task from Test That Mutex Works in QuickJS to Test That function-schemata's Mutex Implementation Works in QuickJS.Aug 5 2024, 4:44 PM
DMartin-WMF subscribed.

At this point in time, it's not clear whether/when we will implement asynchronous reentrancy; even if we do, we'll need something like a tagging mechanism, not mutexes.

cmassaro changed the task status from Declined to Invalid.Jan 6 2026, 4:57 PM

At this point in time, it's not clear whether/when we will implement asynchronous reentrancy; even if we do, we'll need something like a tagging mechanism, not mutexes.

Adding to this: I hope we'll have Rust executors by then, in which case we'll have much better options for distinguishing among streams :).