Я наткнулся на странное поведение во всех браузерах, которые я пробовал:
- Chromium 69.0.3497.92 (Официальная сборка) Arch Linux (64-битная версия)
- Chrome69.0.3497.100 (Официальная сборка) (64-разрядная версия)
- Firefox 62.0 (64-разрядная версия)
Когда я пытаюсь выделить память для WebAssembly путем создания экземпляра объекта WebAssembly.Memory
,например, вот так:
new WebAssembly.Memory({ initial: 1 })
В Chrome / Chromium я получаю:
VM274:1 Uncaught RangeError: WebAssembly.Memory(): could not allocate memory
at <anonymous>:1:1
(anonymous) @ VM274:1
А в Firefox я получаю:
Error: out of memory
Распределение работаетпросто отлично в Node.js, но по какой-то причине все мои браузеры терпят неудачу здесь.Я не уверен, что делать, и с тех пор все сайты, которые зависят от WebAssembly, стали для меня непригодными.
Я подозреваю, что Linux не позволяет браузерам (но не node.js?) Распределять память, ноэто просто дикая догадка.Практически идентичная установка на другом компьютере работает просто отлично, но на этом конкретном компьютере каждое выделение из браузера не выполняется.
Кто-нибудь знает, что происходит?
Вот мой вывод ulimit -a
:
-t: cpu time (seconds) unlimited
-f: file size (blocks) unlimited
-d: data seg size (kbytes) unlimited
-s: stack size (kbytes) 8192
-c: core file size (blocks) unlimited
-m: resident set size (kbytes) unlimited
-u: processes 31215
-n: file descriptors 1024
-l: locked-in-memory size (kbytes) 16384
-v: address space (kbytes) 8388608
-x: file locks unlimited
-i: pending signals 31215
-q: bytes in POSIX msg queues 819200
-e: max nice 0
-r: max rt priority 99
-N 15: unlimited