Re: C++ binding: arg errors
[
Date Prev][
Date Next][
Thread Prev][
Thread Next]
[
Date Index]
[
Thread Index]
- Subject: Re: C++ binding: arg errors
 
- From: Nick Gammon <nick@...>
 
- Date: Sat, 7 Oct 2006 17:16:54 +1000
 
On 06/10/2006, at 9:29 AM, Rici Lake wrote:
And for a good reason. If you remove the 'self' argument from the 
stack, and there is no other reference to it, then it could get 
garbage collected while your method is running, with possibly 
disastrous consequences.
I'm trying to think how this would actually be a problem.
I have taken the information from the self parameter and stored it 
(in my case a userdata field) and then removed it from the stack, so 
I don't want it any more. The called function doesn't want it, as it 
never gets it in the first place.
I suppose it could happen, if you called the function with a method 
that was anonymously created on-the-fly, but it seems a strange way 
to code to me.
In my case the item in question is a userdata that represents a 
(pointer to) an object that already exists, and will continue to 
exist even if the userdata is garbage-collected, but I suppose it 
depends on your application a bit.
- Nick