On Jul 28, 2008, at 18:03, Matthieu Siggen wrote:
Hi
FWIW:
While debugging I found out that the fopFactory.newFop call
obtains the
handle. Unfortunately, the handle seems to be arbitrarly
released, ie. a
garbage collection is sometimes necessary to free the handle.
OK, this seems to indicate that:
a) the issue is not located on the FOP-side
b) it's not really 'arbitrary'
If FOP itself would unnecessarily hold on to a TTF, then a GC will
not magically release it.
As Jeremias already noted, no obvious bugs present. All FOP does, is
open a standard InputStream and properly close it when it is no
longer needed. After that, it's up to the InputStream implementation
to release the native file handle. It could be that this last step
does not occur until the InputStream itself is cleared by the GC. So,
it's possible that 'arbitrarily' simply means 'upon the next implicit
or explicit garbage-collection'.
Anyway, unfortunately it seems like it's not something we can
directly help you with. The only workaround may even be to explicitly
ask for Runtime.gc() after every run. Then again, I'm wondering
whether this could be a showstopper when running multiple
simultaneous FOP-sessions in the same environment. :-S
Cheers
Andreas
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]