Из строки документации:
Выполняйте BODY только до тех пор, пока нет ожидающих ввода.
Если поступает ввод, это завершает выполнение BODY иwhile-no-inputвозвращает t. Выход заставляет его возвращать ноль. Если BODY завершает работу,while-no-inputвозвращает любое значение, произведенное BODY.
Если я правильно понимаю, этот макрос позволяет мне (пытаться) выполнять тяжелые вычисления без зависания интерфейса. Это, безусловно, концепция, которая мне кажется привлекательной, но мне остается только задуматься, когда это полезно на практике.
Кажется, что вычисления могут быть прерваны в любой момент, без информации о том, где это произошло, и нет простого способа возобновить его позже. Что заставляет меня думать, что это может быть не очень полезно в конце концов ...
- Есть ли рекомендуемый способ использования
while-no-inputмакроса? - Есть ли примеры использования этого макроса в дикой природе?