-----Original Message-----
From: Ingo Prötel [mailto:address@hidden
Sent: Monday, May 17, 2004 19:27
To: Jeroen Frijters
Cc: Michael Koch; address@hidden
Subject: Re: Patch: File.deleteOnExit()
Hi,
I would vote for Michaels solution. Having a static
initializer that creates a Thread which might
never be used seems wasteful.
Cheers,
ingo
Jeroen Frijters wrote:
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.
Regards,
Jeroen
_______________________________________________
Commit-classpath mailing list
address@hidden
http://mail.gnu.org/mailman/listinfo/commit-classpath
--
Ingo Prötel address@hidden
aicas GmbH http://www.aicas.com
Haid-und-Neu-Str. 18 phone +49 721 663 968-32
76131 Karlsruhe fax +49 721 663 968-93
Germany