UnmanageObject(取消管理对象)

UnmanageObject(取消管理对象)[男人]

获取封装在托管对象中的内存的所有权。

细节

示例

全部打开全部关闭

基本示例  (2)

创建托管对象:

托管对象处于活动状态:

取消对它的管理,返回原始包装值:

托管对象不再处于活动状态:

编译创建托管对象的函数:

编译一个取消管理对象的函数:

创建托管对象:

取消对它的管理,返回原始包装值:

后续调用UnmanageObject(取消管理对象)失败,因为托管对象在未被管理时会失效:

范围  (3)

当不再引用托管对象时,将评估释放函数:

如果托管对象处于非托管状态,则不会计算释放函数:

托管对象无效UnmanageObject(取消管理对象)当它们超出范围时不会被释放。编译用于创建非托管对象的函数:

创建托管对象,然后让它超出范围:

在让对象超出范围之前取消对其的管理:

通过对托管对象进行非托管,然后创建新的托管对象,可以有效地借用托管对象的内容。编译用于创建托管C数组的函数:

编译一个非托管、修改然后重新托管C数组的函数:

创建托管C阵列:

修改它,返回一个新的托管C数组:

属性和关系  (2)

分配原始内存的函数通常返回托管对象:

取消指针管理:

将值写入指针:

由于指针是非托管的,因此调用原始内存可用当不再使用内存时:

托管对象由声明为的函数自动展开库功能声明,因此没有呼叫UnmanageObject(取消管理对象)需要:

托管C数组在传递给库函数之前被借用并自动展开:

Wolfram Research(2022),UnmanageObject,Wolfram语言函数,https://reference.wolfram.com/language/ref/UnmanageObject.html。

文本

Wolfram Research(2022),UnmanageObject,Wolfram语言函数,https://reference.wolfram.com/language/ref/UnmanageObject.html。

CMS公司

沃尔夫拉姆语言。2022.“UnmanageObject”。Wolfram语言与系统文档中心。Wolfram研究。https://reference.wolfram.com/language/ref/UnmanageObject.html。

亚太地区

沃尔夫拉姆语言。(2022). UnmanageObject。Wolfram语言与系统文档中心。检索自https://reference.wolfram.com/language/ref/UnmanageObject.html

BibTeX公司

@misc{reference.wolfram_2024_unmanageobject,author=“wolfram Research”,title=“{unmanageobject}”,year=“2022”,howpublished=“\url{https://reference.wolfram.com/language/ref/unmanageobject.html}”,note=[访问时间:2024年9月27日]}

BibLaTeX公司

@online{reference.wolfram_2024_unmanageobject,organization={wolfram Research},title={unmanageobject},year={2022},url={https://reference.jolfram.com/language/ref/unmanageobject.html},note=[访问时间:2024年9月27日]}