ImageCleaner>>cleanUpForRelease calls >>cleanUpMethods which calls
Delay class>>startTimerEventLoop. I thought this would have started with a clean/empty suspended delays heap, but it carries forward
the old SuspendedDelays.

So if there happened to be a suspended delay expiring in a month's time,
that would not be affected by ImageCleaner and would end up in the release.

I believe the correct behaviour would be for ImageCleaner to produce a clean/empty suspended delays, and so that no waiting processing get stuck, signal any remaining suspended delays when the timer event loop is stopped by Delay class>>stopTimerEventLoop.

Any objections?

cheers -ben


Reply via email to