LINUX.ORG.RU

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

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

тебя понесло. тебя побьют. даже ногами. ты не можешь весь код исполняемый асинк функцией написать в хидере или хидерах. это значит что ЛЮБУЮ функцию, вызываемую из async контекста, тебе придется придется оформлять так. даже жалкий printf какой-нить.

Нет, требуется хранилище только для переменных async функций, а обычные функции выполняются на обычном стеке.

Представь себе epoll switch case, ты можешь вызвать любую функцию, но переменные задачи ты скорее всего гоняешь в какой то структуре, вот эта структура это хранилище стека async-вызова.

Между переключением задач нужно сохранять только данные самих задач, сохранять состояние обычных функций не надо, они не могут прерываться. А асинхронные могут, потому и сохраняем.

Исправление MOPKOBKA, :

тебя понесло. тебя побьют. даже ногами. ты не можешь весь код исполняемый асинк функцией написать в хидере или хидерах. это значит что ЛЮБУЮ функцию, вызываемую из async контекста, тебе придется придется оформлять так. даже жалкий printf какой-нить.

Нет, требуется хранилище только для переменных async функций, а обычные функции выполняются на обычном стеке.

Представь себе epoll switch case, ты можешь вызвать любую функцию, но переменные задачи ты скорее всего гоняешь в какой то структуре, вот эта структура это хранилище стека async-вызова.

Между переключением задач нужно сохранять только данные самих задач, сохранять состояние обычных функций не надо, они не могут прерываться.

Исправление MOPKOBKA, :

тебя понесло. тебя побьют. даже ногами. ты не можешь весь код исполняемый асинк функцией написать в хидере или хидерах. это значит что ЛЮБУЮ функцию, вызываемую из async контекста, тебе придется придется оформлять так. даже жалкий printf какой-нить.

Нет, требуется хранилище только для переменных async функций, а обычные функции выполняются на обычном стеке.

Представь себе epoll switch case, ты можешь вызвать любую функцию, но переменные задачи ты скорее всего гоняешь в какой то структуре, вот эта структура это хранилище стека async-вызова.

Исправление MOPKOBKA, :

тебя понесло. тебя побьют. даже ногами. ты не можешь весь код исполняемый асинк функцией написать в хидере или хидерах. это значит что ЛЮБУЮ функцию, вызываемую из async контекста, тебе придется придется оформлять так. даже жалкий printf какой-нить.

Нет, требуется хранилище только для переменных async функций, а обычные функции выполняются на обычном стеке.

Представь себе epoll switch case, ты можешь вызвать любую функцию, но переменные задачи ты скорее всего гоняешь в какой то структуре, вот эта структура это хранилище стека async функций.

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

тебя понесло. тебя побьют. даже ногами. ты не можешь весь код исполняемый асинк функцией написать в хидере или хидерах. это значит что ЛЮБУЮ функцию, вызываемую из async контекста, тебе придется придется оформлять так. даже жалкий printf какой-нить.

Нет, требуется хранилище только для переменных async функций, а обычные функции выполняются на обычном стеке.