For the complete documentation index, see llms.txt. This page is also available as Markdown.

Песочница

Если вы хотите дать возможность третьим лицам запускать скрипты Gentee на вашем компьютере, то используйте при запуске скриптов режим Playground. Этот режим удобен для запуска скриптов в демонстрационных или учебных целях и защищает данные на компьютере от случайного или намеренного ущерба. Для включения этого режима укажите поле IsPlayground как true в структуре Settings при запуске скрипта с помощью функции Run. Кроме этого, рекомендуется уменьшить параметры Cycle и Depth для установки ограничений на потребляемые ресурсы.

Работа скриптов в режиме Playground имеет следующие ограничения:

  • Процессы. Отключены запуски любых процессов, включая открытие файлов в соответствующих приложениях. То есть функции Open, OpenWith,Run, Start работать не будут. Также не работает команда $.

  • Файловая система. Запись и чтение файлов может происходить только в директории, которая указана в настройках Playground. Если она не указана, то создаётся поддиректория во временной директории. Эта директория становится текущей при запуске скрипта. Кроме этого, имеются ограничения на:

    • общее количество файлов (по умолчанию, 100).

    • суммарный размер файлов (по умолчанию, 10 MB).

    • максимальный размер файла (по умолчанию, 5 MB).

  • Сеть. Отключена функция HTTPRequest. Вызов функций Download, HTTPGet, HTTPPage виртуально добавляет файл с соответствущим размером в директорию для записи. Таким образом, на эти функции также действуют ограничения файловой системы.

Если в процессе работы скрипта возникнет ошибка из-за ограничений режима Playground, то скрипт прекратит свою работу. В этом случае, текст ошибки будет начинаться с [Playground].

run {
    $ echo "ooops"
}
// ERROR: [2:5] [Playground] starting any processes is disabled
run {
    AppendFile("../out.txt", "this is a test message")
}
// ERROR: [2:5] [Playground] access denied [../out.txt]
run  {
    for i in 1..110 {
        CreateFile(`%{i}.txt`, false)
    }
}
// ERROR: [3:9] [Playground] file limit reached [100]

Last updated

Was this helpful?