surface: Roughly annotate Surface.java with memory usage

We've been seeing a resource leak of un-GC'd surfaces leading to system
failure. This CL updates the Surface.java class with calls into the
runtime to more accurately reflect the resources being held by these
objects.

The choice of size here is somewhat arbitrary, but should strike a good
middle ground between worst and average case scenarios.

Bug: 307862724
Test: Surface tests and new unit test
Change-Id: Ibee8af1e5e6ba0c98b64053f866746b2f9adfbb2
1 file changed