NullPointerException / threads
Glenn Chambers
GChambers@provsol.com
Tue Mar 14 06:20:00 GMT 2000
> In order to solve this problem, we could create a new
> NullPointerException in the context of the signal handler, but that
> may crash if the SEGV occurs in the memory allocator itself. Also,
> fillInStackTrace calls JvNewByteArray to hold the stack trace, and if
> this fails we'll crash anyway, so maybe a SEGV handler shouldn't even
> be calling fillInStackTrace.
>> I suppose we could create a NullPointerException and a pre-allocated
> stacktrace for each thread when it starts, but that seems rather
> nasty.
Can you tell at SEGV-time if you're currently in the allocator? If so,
you could preallocate an 'emergency' exception+array, and use it only
in that case. The non-allocator case would create a new object normally.
This would fail if multiple threads SEGV in the memory
allocator, but by that point you may be dead anyway...
More information about the Java
mailing list