А что ты понимашь под ротирующимися?
• У нас есть кучка бампающих аллокаторов с рефкаунтерами, по одному рефкаунтеру на каждый аллокатор, по одному аллокатору на N фреймов.
• В начале N-го фрейма мы берем из кучки новый пустой Бамп, аллоцируем в нём место под наш таск, получая кастомный бокс, дёргающий рефкаунтер связанный с бампом.
• На следующем N-ом фрейме мы смотрим на Бампы счётчик в которых вернулся к нулю и отмечаем их как свободные. Эти свободные Бампы снова можно использовать для аллокации новых тасок.