Thread A, producer
const memory = new SharedArrayBuffer(16);
// produce 100 items and wake consumer after each
for (let i = 0;i<100;i++){
// wait for consumer to say it's ready
Atomics.wait(memory, 0);| (func $mono_llvm_cpp_catch_exception (;34266;) (export "mono_llvm_cpp_catch_exception") (param $var0 i32) (param $var1 i32) (param $var2 i32) | |
| (local $var3 i32) | |
| (local $var4 i32) | |
| (local $var5 i32) | |
| global.get $__stack_pointer | |
| i32.const 32 | |
| i32.sub | |
| local.tee $var3 | |
| global.set $__stack_pointer | |
| local.get $var3 |
Thread A, producer
const memory = new SharedArrayBuffer(16);
// produce 100 items and wake consumer after each
for (let i = 0;i<100;i++){
// wait for consumer to say it's ready
Atomics.wait(memory, 0);| (func $Wasm_Advanced_Sample_Sample_Test_SillyLoop (;13707;) (param $var0 i32) | |
| (local $var1 i32) | |
| (local $var2 i32) | |
| (local $var3 i32) | |
| (local $var4 i32) | |
| (local $var5 i32) | |
| global.get $__stack_pointer | |
| i32.const 144 | |
| i32.sub | |
| local.tee $var1 |
| public class Prog | |
| { | |
| static void TimerHandler(object _) | |
| { | |
| Console.WriteLine("TimerHandler A"); | |
| } | |
| static void SetNextTimer() | |
| { |
Main() to JSWebWorkeronClick callback)
| @page "/" | |
| @using System.Diagnostics; | |
| @using System; | |
| @using System.Timers; | |
| @inject IJSRuntime JS | |
| <PageTitle>Index</PageTitle> | |
| <p> | |
| <button @onclick="Test">Test</button> |
| @page "/" | |
| @using System.Diagnostics; | |
| @using System; | |
| @using System.Timers; | |
| @inject IJSRuntime JS | |
| <PageTitle>Index</PageTitle> | |
| <p> | |
| <button @onclick="Test">Test</button> |
| #pragma once | |
| #include "stdafx.h" | |
| namespace multiset { | |
| typedef uint8_t byte; | |
| class FindMultisetRank | |
| { | |
| private: |