[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Patch: File.deleteOnExit()
From: |
Michael Koch |
Subject: |
Re: Patch: File.deleteOnExit() |
Date: |
Mon, 17 May 2004 16:09:22 +0200 |
User-agent: |
KMail/1.6.2 |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Am Montag, 17. Mai 2004 15:01 schrieb Jeroen Frijters:
> Michael Koch wrote:
> > Am Montag, 17. Mai 2004 12:40 schrieb Jeroen Frijters:
> > > Michael Koch wrote:
> > > > The attached patch written by Guilhem Lavaux implements
> > > > File.deleteOnExit() in an easy way.
> > > >
> > > > Ok to commit ?
> > >
> > > It doesn't make me happy to preallocate all these objects (and
> > > in general, the less static initializers the better). Shouldn't
> > > we just move DeleteFileHelper to gnu.java.io (or whatever) and
> > > make it a proper singleton? That way the singleton will be
> > > allocated lazily upon first use of File.deleteOnExit().
> >
> > Here is a revised patch for review:
>
> Thanks! I think it would be slightly better to do:
>
> +public final class DeleteFileHelper extends Thread
> +{
> + private static LinkedList filesToDelete = new LinkedList();
> +
> + static
> + {
> + Runtime.getRuntime().addShutdownHook(new DeleteFileHelper());
> + }
> +
> + public static void add(File file)
> + {
> + filesToDelete.add(file);
> + }
> +
> + private DeleteFileHelper()
> + {
> + }
>
> Since we already had a static initializer (to initialize the static
> filesToDelete field), it's better to leverage it to do the call to
> addShutdownHook as well. I also made the constructor private.
Here another revision.
Michael
2004-05-17 Guilhem Lavaux <address@hidden>
* gnu/java/io/DeleteFileHelper.java: New file.
* java/io/File.java
(deleteOnExit): Implemented.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
iD8DBQFAqMeSWSOgCCdjSDsRAudJAJ4wrJOAyRg5eapG8Cjk6Iz00dhq0wCffq8y
IdFMVxBER1zaB4DJ5Ku/yxk=
=oEOu
-----END PGP SIGNATURE-----
file.diff
Description: Text Data