public void free() {
   // Memory spys can veto the basic free if they determine the memory was
   // not allocated.
   if (memorySpy.free(this)) {
     osMemory.free(osaddr);
   }
 }