Это отлично работает:
python -m timeit -c "$(cat file_name.py)"
Поскольку обещания могут быть разрешены только один раз (либо отпустили , либо отклонено), первая победа разрешения и любые дальнейшие вызовы будут проигнорированы. Из docs :
Во всех случаях, когда обещание разрешено (то есть выполнено или отклонено), разрешение является постоянным и не может быть сброшено.
Если я избегаю вызывать отклонение / разрешение несколько раз?
blockquote>Вы даже можете создать свое приложение, позволяющее двум методам «расы» друг против друга разрешать отложенные, но в целом этого следует избегать, чтобы уменьшить путаницу читателя.
Q.race(getNextUserClick(), Q.timeout(…)).then(nextScreen)
, чем с одним отложенным и вручную разрешить это несколько раз. – Bergi 9 June 2014 в 18:40Race
интересен, но kew.js на самом деле не имеет этого, к сожалению. – bfred.it 9 June 2014 в 21:49