Почему библиотеки Promise используют циклы событий?

Учитывая следующий код JavaScript:

var promise = new Promise();
setTimeout(function() {
    promise.resolve();
}, 10);

function foo() { }
promise.then(foo);

В реализациях обещаний, которые я видел, promise.resolve () просто установит какое-либо свойство, чтобы указать, что обещание было разрешено, и foo () будет вызван позже во время цикла события, хотя кажется, что обещание достаточно информации для немедленного вызова любых отложенных функций, таких как foo ().

Кажется, что метод цикла событий добавляет сложности и снижает производительность, так почему он используется?

Хотя большая часть моего использования обещаний связана с JavaScript, одна из причин моего вопроса заключается в реализации обещаний в случаях с высокой производительностью, таких как игры на C ++, и в этом случае мне интересно, смогу ли я использовать некоторые преимущества обещаний без издержки цикла событий.

Ответы на вопрос(3)

Ваш ответ на вопрос