nameld001 发表于 2011-4-11 22:14:40

关于vlax-release-object具体作用

释放图形对象(vlax-release-object obj)参数objVLA 对象。释放图形对象后将不能通过 obj 访问该对象。返回值未确定。
用了这么久的LISP没研究过这个函数的核心作用,平常调用(vlax-get-acad-object)等对像,也不用这个释放对像,好像在调用excel、access数据对像时比较有用,那它的作用主要在哪里,如果有这方法的认识,请解释一下。

Gu_xl 发表于 2011-4-11 22:23:13

回复 nameld001 的帖子

释放图形对象,若对于excel、access已打开的文件对象,如果没有释放该对象,再次打开该文件就会出错!因为该文件已被别的对象占用,无法打开,或只能以只读方式打开!

nameld001 发表于 2011-4-11 22:28:00

那这么说对于CAD里的自己的对像如:(val-get-activedocument(vlax-get-acad-object))释不释放都无所为了是吧.

Gu_xl 发表于 2011-4-12 09:01:07

回复 nameld001 的帖子

只要vla对象还指向图形对象,autocad就会保留该对象所需内存,如果不再需要引用该对象,应使用vlax-release-object释放该对象,释放对象并不会释放内存,autocad会在必要时自动释放相关内存。也就是说,你不释放对象,对象所占内存一直存在,若释放对象后,autocad会自己在必要时自动处理释放内存!

nameld001 发表于 2011-4-12 16:21:23

哦,明白了,谢谢版主。
页: [1]
查看完整版本: 关于vlax-release-object具体作用