ManagedObject

ManagedObject[]

represents a managed object.

Details

  • ManagedObject is returned by functions such as CreateManagedObject.
  • Only active managed objects evaluate the freeing function when they are no longer referenced.
  • Managed objects can be inactivated with UnmanageObject.
  • Information for a ManagedObject may include the following properties:
  • "Active"True if the object is actively being managed
    "BaseValue"the base value
    "FreeingFunction"the freeing function
    "Value"the value
  • Properties can be accessed with ManagedObject[][prop].
  • Properties that can be extracted include all Information properties listed above.
  • Many functions that expect pointer objects will automatically unwrap managed expressions containing pointers.

Examples

open allclose all

Basic Examples  (2)

Create a managed object:

Get the contained expression:

f[expr] is evaluated once the managed object is no longer referenced:

Scope  (1)

Information  (1)

Create a managed object:

Get Information about the object:

Get the value of the managed object:

Get the freeing function of the object:

List the operations available to this object:

Properties & Relations  (3)

Create a managed object:

To stop managing the object, use UnmanageObject:

The ManagedObject is no longer active:

Functions like RawMemoryAllocate return a managed RawPointer:

The freeing function is RawMemoryFree:

Export a string as raw memory:

Read the value stored in the pointer:

Many functions will automatically unwrap managed pointers:

Wolfram Research (2023), ManagedObject, Wolfram Language function, https://reference.wolfram.com/language/ref/ManagedObject.html.

Text

Wolfram Research (2023), ManagedObject, Wolfram Language function, https://reference.wolfram.com/language/ref/ManagedObject.html.

CMS

Wolfram Language. 2023. "ManagedObject." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/ManagedObject.html.

APA

Wolfram Language. (2023). ManagedObject. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ManagedObject.html

BibTeX

@misc{reference.wolfram_2024_managedobject, author="Wolfram Research", title="{ManagedObject}", year="2023", howpublished="\url{https://reference.wolfram.com/language/ref/ManagedObject.html}", note=[Accessed: 28-April-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_managedobject, organization={Wolfram Research}, title={ManagedObject}, year={2023}, url={https://reference.wolfram.com/language/ref/ManagedObject.html}, note=[Accessed: 28-April-2024 ]}