ChunkyMonk has asked for the wisdom of the Perl Monks concerning the following question:
I am but a mere chunk of monk, and have a question. I have a subroutine that will be passing back a very large chunk of data (25K or larger). Instead of returning the entire chunk, I would like to pass back a reference to that chunk; however, that chunk is created within the subroutine.
For example:
For example:
Now, should I just declare a variable before I execute the sub, and then pass that reference of the variable to the sub and just mess with it from within the sub? Is the above code just dangerous in terms of $big_jenny being trashed on subroutine exit (on a very busy server)? Or lastly, am I just not seeing an easier solution to all of this?my $ref_to_big_chunk = &get_big_chunk(8675309); print "And the big data is: "; print $$ref_to_big_chunk; sub get_big_chunk { my $jenny_tel = $_[0]; my $big_jenny = [ all work done here to make this huge ] return \$big_jenny; } ----[eof]----
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: The danger is passing back references to local subroutines.
by thelenm (Vicar) on Jun 18, 2002 at 19:40 UTC | |
by janx (Monk) on Jun 18, 2002 at 20:09 UTC | |
by perrin (Chancellor) on Jun 18, 2002 at 21:16 UTC | |
by janx (Monk) on Jun 19, 2002 at 07:57 UTC |
Back to
Seekers of Perl Wisdom