LINUX.ORG.RU

История изменений

Исправление surefire, (текущая версия) :

Тебе во первых нужно понять есть один поток, он выполняет event loop, в event loop попадают разные io операции и другие события. Когда ты запускаешь программу, она выполняется последовательно и если нет задач для event loop она просто завершится. Если есть асинхронным задачи типа ввода-вывода, событий, таймаутов и тому подобное, то event loop становится на ожидание этих событий и при их наступлении исполняет соответствующие коллбеки. Ты не можешь написать чистый асинхронный тяжелый расчёт в том же event loop. Потому, что если коллбек словил длинную не асинк операцию, то другие события не исполняться, пока он не отдаст управление в event loop.

Исходная версия surefire, :

Тебе во первых нужно понять есть один поток, он выполняет event loop, в event loop попадают разные io операции и другие события. Когда ты запускаешь программу, она выполняется последовательно и если нет задач для event loop она просто завершится. Если есть асинхронным задачи типа ввода-вывода, событий, таймаутов и тому подобное, то event loop становится на ожидание этих событий и при их наступлении исполняет соответствующие коллбеки. Ты не можешь написать чистый асинхронный тяжелый расчёт в том же event loop.