# destroyObject

#### destroyObject(object, message)
Core/destroyObject.js 41

  Destroys an object. Each of the object's functions, including functions in its prototype, is replaced with a function that throws a `DeveloperError`, except for the object's `isDestroyed` function, which is set to a function that returns `true`. The object's properties are removed with `delete`.
  This function is used by objects that hold native resources, e.g., WebGL resources, which need to be explicitly released. Client code calls an object's `destroy` function, which then releases the native resource and calls `destroyObject` to put itself in a destroyed state.

  Name | Type | Description
  --- | --- | ---
  `object` | Object | The object to destroy.
  `message` | String | optional The message to include in the exception that is thrown if a destroyed object's function is called.

  ##### Example:

      // How a texture would destroy itself.
      this.destroy = function () {
          _gl.deleteTexture(_texture);
          return Cesium.destroyObject(this);
      };

  ##### See:

  - DeveloperError