Что означают "Батуты во время выполнения" в Замечаниях по выпуску MonoTouch 6.0.8?
В примечаниях к выпуску MonoTouch 6.0.8 говорится:
Батуты во время выполнения: больше нет необходимости вручную управлять батутами во время выполнения Mono, батуты теперь обрабатываются динамически.
Что это значит? Как вы вручную управляете батутами в любом случае?
Вам все еще нужно добавить флаги компилятора, когда вы знаете, что, вероятно, у вас закончатся батуты?
1 ответ
Это означает, что, как отмечается в выпуске, Monotouch теперь вычисляет, сколько батутов нужно выделить.
Чтобы добавить больше батутов, вы добавите флаги компилятора, такие как:
-aot "nrgctx-trampolines=4096" -aot "nimt-trampolines=4096" -aot "ntrampolines=4096"
Обычно, когда у вас заканчивались батуты, это означало, что вы использовали много обобщений и интерфейсов, которые трудно подсчитать, сколько памяти нужно выделить заранее (не так). Таким образом, Ксамарин, должно быть, нашел магический способ сделать это вычисление и соответственно распределить батуты. Я не мог найти больше информации об этом.
В этой теме есть немного больше информации о батутах в целом: http://forums.xamarin.com/discussion/503/trampolines-cost и этой теме, которая предшествовала другой: http://lists.ximian.com/pipermail/monotouch/2012-March/008800.html