示例#1
0
  private static void makeInstanceWeak(int javaObjectID, boolean keepAsWeak) {
    if (IsLogEnabled)
      Log.d(
          DEFAULT_LOG_TAG,
          "makeInstanceWeak instance " + javaObjectID + " keepAsWeak=" + keepAsWeak);
    Object instance = strongInstances.get(javaObjectID);

    if (keepAsWeak) {
      weakJavaObjectToID.put(instance, Integer.valueOf(javaObjectID));
      weakInstances.put(javaObjectID, new WeakReference<Object>(instance));
    }

    strongInstances.delete(javaObjectID);
    strongJavaObjectToID.remove(instance);
  }