Nano Hash - криптовалюты, майнинг, программирование

Почему spidermonkey выдает ошибку сегментации, когда я вызываю функцию clear()?

Небольшая помощь. Я только что собрал spidermonkey на Debian (./configure, make, make install), и когда я запускаю оболочку js и вызываю функцию clear(), я получаю ошибку сегментации. Любая идея, почему это может быть или где я могу получить помощь? Это случилось с кем-нибудь?

$js
clear() ;
Ошибка сегментации
$


  • Вы понимаете, что clear(); все очищает? скорее всего, что-то получает GC'd, что JS Shell должно функционировать должным образом. Это поведение по умолчанию. Та же ошибка воспроизводится на моей консоли Linux. 02.04.2012
  • Знающему человеку было бы проще помочь вам конкретно, если бы вы могли опубликовать вывод version(); Мои отчеты 185. 02.04.2012
  • Теперь я вижу... это происходит потому, что вы вызвали очистку глобального объекта. Если бы это было вызвано в каком-то правильно написанном коде с использованием песочницы или чего-то подобного, этого бы не произошло. Песочница будет уничтожена, а не глобальный объект. 02.04.2012

Ответы:


1

Вызов очистки в оболочке JS без аргументов удаляет глобальный объект. В интерактивном сеансе цикл чтения-оценки-печати попытается получить доступ к глобальному объекту, который ранее был уничтожен. Конечный результат: ошибка сегментации. Более того, глобального объекта больше не существует.

02.04.2012
  • Итак, это поведение по умолчанию? Может быть причина, по которой это поведение по умолчанию, но я действительно этого не вижу. Можно было бы подумать, что поведение будет немного более сложным, чем ошибка сегментации, но, тем не менее, хорошо знать об этом. 04.04.2012
  • Я согласен. Но то, как код написан в оболочке (это функция оболочки Spidermonkey). Если вы не предоставляете объект, по умолчанию он используется для основного объекта вызывающей стороны. Это особенно полезно для очистки песочниц. Там должен быть какой-то код, чтобы проверить, что вы не собираетесь собирать глобальный объект, но тогда вы не сможете очистить свою песочницу с помощью clear(); 04.04.2012
  • Однако этого можно было бы избежать с помощью проверки ссылок. Возможно, вы захотите предложить это как ошибку оболочки SpiderMonkey. 04.04.2012
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..