When cursor is not hold, then "usually" it is not materialized - depends on used internal operations. So although you process huge set of rows, the memory usage can be low.