Как остановить скрипт в скульпте
Я сделал скульптурный проект для своих учеников. Каждый раз, когда они делают бесконечный цикл, браузер падает, а код исчезает. Это очень расстраивает студентов. Я видел кнопку остановки на https://trinket.io/python, но не понимаю, как они это сделали. Я следовал инструкциям на http://www.skulpt.org/ чтобы интегрировать skulpt в мой сайт.
Есть идеи?
0 ответов
Не очень хорошо документированы - есть определенные параметры, которые вы можете добавить в Sk.configure
один из которых execLimit
в мс.
например, из примера http://skulpt.org/using.html
Sk.configure({output:outf, read:builtinRead, execLimit: 5000});
Skulpt поднимет TimeLimitError
если execLimit
достигнуто.
в части кнопки отмены - есть дополнительная настройка yieldLimit
который вы можете установить в ms
. Это по существу приостанавливает выполнение через определенные промежутки времени. И вы можете добавить обработчик для обработки этой паузы.
Опять же, не очень хорошо документирован Skulpt, но вот скрипт JS, который является доказательством концепции: