[发明专利]基于缓存的动态数据加载方法及装置有效
申请号: | 201110072729.6 | 申请日: | 2011-03-24 |
公开(公告)号: | CN102136000A | 公开(公告)日: | 2011-07-27 |
发明(设计)人: | 郭瑞军 | 申请(专利权)人: | 北京数码大方科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F12/08 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 吴贵明 |
地址: | 100080 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 缓存 动态 数据 加载 方法 装置 | ||
技术领域
本发明涉及计算机领域,具体而言,涉及一种基于缓存的动态数据加载方法及装置。
背景技术
随着三维CAD软件在制造业,尤其是在装备业的广泛应用,软件所处理的模型也在不断增大。由最初的几百个零件的减速器模型,到现在的几万个零部件的整车模型和大型机械装备,使得模型数据文件由原来的几百KB增加到几百MB,于是就对软件性能和内存使用量提出了新的要求。
例如打开一个有100多个零件的减速器装配,目前主流配置的计算机只需要5秒以内,占用内存小于100MB,而打开一个有3万个零件的大型机械装配,同等配置的计算机需要5分钟以上,占用内存接近2GB,这是一般用户所无法忍受的。尽管用户可以通过提高硬件配置在一定程度上提高速度,解决内存消耗问题,但对于零件数上万的大装配,仅仅提升硬件配置的效果就不再那么明显了,而且在Windows XP 32位系统下,每个进程所占用的内存最大限制是3GB,超过这个限制时,软件将直接异常退出。因此,必须从软件算法上做出根本性改进,这样才能使软件在性能上有质的提升,从而满足企业进一步的需要。
目前针对相关技术的CAD文件数据打开过慢,占用内存过多,系统总体性能低的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术的CAD文件数据打开过慢,占用内存过多,系统总体性能低的问题,目前尚未提出有效的问题而提出本发明,为此,本发明的主要目的在于提供一种基于缓存的动态数据加载方法及装置,以解决上述问题。
为了实现上述目的,根据本发明的一个方面,提供了一种基于缓存的动态数据加载方法,该方法包括:CAD系统接收打开文件请求;根据打开文件请求将CAD文件数据写入缓存;根据CAD文件数据在缓存中构建零件容器以及零件组件容器,使得CAD文件数据在缓存中打开;CAD系统接收操作请求,并通过零件容器以及零件组件容器调用零件对象和零件组件对象,从而将CAD文件数据加载至内存。
进一步地,CAD系统接收操作请求,并通过零件容器以及零件组件容器调用零件对象和零件组件对象,从而将CAD文件数据加载至内存包括如下步骤:CAD系统根据操作请求来调用零件容器以及零件组件容器;通过零件容器调用与其对应的零件对象,同时,通过零件组件容器调用与其相对应的零件组件对象;根据零件对象和零件组件对象将CAD文件数据加载至内存;CAD系统返回CAD文件数据。
进一步地,在通过零件组件容器调用与其相对应的零件组件对象之前,方法还包括:判断是否存在与零件组件容器相对应的零件组件对象,其中,如果存在,则通过零件组件容器调用零件组件对象;如果不存在,则返回缓存,在缓存中构建与零件组件容器相对应的零件组件对象,并在构建零件组件对象成功后,通过零件组件容器调用零件组件对象。
进一步地,CAD文件数据包含一个或多个零件数据,各个零件数据按属性分类包含一个或多个零件组件数据。
进一步地,根据CAD文件数据在缓存中构建零件容器以及零件组件容器的步骤包括:读取缓存中的CAD文件数据,以获取各个零件数据的起始地址和数据大小,并根据各个零件数据的起始地址和数据大小来构建零件容器;读取零件数据,以获取各个零件组件数据的起始地址和数据大小,并根据各个零件组件数据的起始地址和数据大小来构建零件组件容器。
进一步地,零件容器包含一个或多个零件组件容器。
根据本发明的另一方面,提供了一种基于缓存的动态数据加载的装置,该装置包括:获取模块,用于CAD系统接收打开文件请求;写入模块,用于根据打开文件请求将CAD文件数据写入缓存模块中;构建模块,用于根据CAD文件数据在缓存模块中构建零件容器以及零件组件容器,使得CAD文件数据在缓存模块中打开;操作模块,用于CAD系统接收操作请求,并通过零件容器以及零件组件容器调用零件对象和零件组件对象,从而将CAD文件数据加载至内存。
进一步地,操作模块包括:调用模块一,用于CAD系统根据操作请求来调用零件容器以及零件组件容器;调用模块二,用于通过零件容器调用与其对应的零件对象,同时,通过零件组件容器调用与其相对应的零件组件对象;加载模块,用于根据零件对象和零件组件对象将CAD文件数据加载至内存;返回模块,用于CAD系统返回CAD文件数据。
进一步地,调用模块二包括:判断模块,用于判断是否存在与零件组件容器相对应的零件组件对象,其中,如果存在,则通过零件组件容器调用零件组件对象;如果不存在,则返回缓存,在缓存中构建与零件组件容器相对应的零件组件对象,并在构建零件组件对象成功后,通过零件组件容器调用零件组件对象。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京数码大方科技有限公司,未经北京数码大方科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110072729.6/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置