[Newbies] Do I need to close a FileStream?

Bert Freudenberg bert at freudenbergs.de
Sun Mar 25 10:30:02 UTC 2007

On Mar 24, 2007, at 17:41 , Tim Johnson wrote:

> On Mar 24, 2007, at 3:45 AM, Kyle Hamilton wrote:
>> The underlying OS has only a certain number of file handles that it
>> can maintain open at a time.  On UNIX-like systems, there is also
>> possibly a maximum number of files per process.  If this limit is  
>> hit,
>> then no additional files can be opened, and on any attempt to do  
>> so an
>> error is returned.
> For some reason I was confused and thought that Squeak's garbage  
> collector would somehow make me immune from this.  Like when the  
> file was no longer being used, it would be closed and purged.

Actually it is indeed. We use finalization for this [*]. However, you  
cannot know _when_ an object actually will be finalized, so you may  
be eating up handles nontheless.

> Now I know otherwise :)

It's good practice not to rely on finalization, but treat it as a  
safety net.

- Bert -

[*] See for example

More information about the Beginners mailing list