nodejs/deps/v8/test/mjsunit/shared-memory/regress-crbug-350641990.js

22 lines
607 B
JavaScript
Raw Permalink Normal View History

// Copyright 2024 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// Flags: --harmony-struct
(function TestAsyncLockProxyAsCallback() {
const callable = new Proxy(eval, {});
const mutex = new Atomics.Mutex;
const locAsyncPromise = Atomics.Mutex.lockAsync(mutex, callable);
let thenExecuted = false;
locAsyncPromise.then(() => {thenExecuted = true}, () => {});
const asyncLoop = () => {
if (!thenExecuted) {
setTimeout(asyncLoop, 0);
return;
}
};
asyncLoop();
})();