Соответственно выключают и включают многозадачность.
Ну, не знаю.Цитата:
2) Помимо модели "одна куча на всех", есть еще и другие модели, более ресурсоемкие, но и более безопасные.
На спеке всё-равно будет "одна куча на всех".
Вид для печати
Vitamin, вот смотри. хочешь ты сделать рекурсию из нереентерабельной функции. КАК?? да никак:) синхронизация тут не поможет, поэтому лучше считать ее вообще отдельной штукой. т.е. она на самом деле не делает функции реентерабельными, она предотвращает конфликты:)
Ну так где прототип то? када посмотреть можно будет?
Навскидку, смотрим в википедию на предмет определения реентерабельности:
Какому из этих критериев противоречит реализация реентерабельности на основе примитивов синхронизации?Цитата:
Компьютерная программа в целом или её отдельная процедура называется реентера́бельной, если она разработана таким образом, что одна и та же копия инструкций программы в памяти может быть совместно использована несколькими пользователями или процессами. При этом второй пользователь может вызвать реентерабельный код до того, как с ним завершит работу первый пользователь и это как минимум не должно привести к ошибке, а в лучшем случае не должно вызвать потери вычислений (то есть не должно появиться необходимости выполнять уже выполненные фрагменты кода).
Вот:
"При этом второй пользователь может вызвать реентерабельный код до того, как с ним завершит работу первый пользователь...".
А в примере получается, что второго пользователя не пускают в процедуру дальше первой итерации, пока "функция окончательно не выйдет", т.е. пока первый пользователь не закончит работу с ней.