架构基于纯Class体系的Common Type System 系统的困惑
2007-01-22 12:26
393 查看
利用 CLR 提出的 Static Members 的概念,可以将普通类型全部类化,包括模块这一概念,通过Static Method
的这样的概念(没有Self指针,只能操作Static
Fileds,等价于原来的函数过程),这样不会影响过程的速度性能。从速度性能上来说,的确该让我满意了!但是对于内存开销来说,采用类这一形式来表现类型后,内存开销增大了,即使表现最简单的整数类型,也不得不用类来表示。还是仔细列举出优劣对比:
优势:
利于系统自举
利于操作符重载
利于扩充:用户自定义新类型
劣势:
类型的Meta信息占用内存略多于非Class架构的类型系统(至少多占用16个字节/简单类型)
简单类型的内存分配至少增加4个字节(指向VMT表,如果不用虚方法或密封类倒是可以省略)
访问类型成员的效率略有下降
迟滞了编译速度,如:对于简单变量的声明,分配多少空间也必须要到类中计算。
一言以蔽之,就是牺牲效率换取CTS的优秀的可扩展性能和自举性能的。不是我所想象的对性能没有影响(只从模块的函数上看过于片面了)。唉,牺牲速度和内存换取的可拓展性到底值不值得。
的这样的概念(没有Self指针,只能操作Static
Fileds,等价于原来的函数过程),这样不会影响过程的速度性能。从速度性能上来说,的确该让我满意了!但是对于内存开销来说,采用类这一形式来表现类型后,内存开销增大了,即使表现最简单的整数类型,也不得不用类来表示。还是仔细列举出优劣对比:
优势:
利于系统自举
利于操作符重载
利于扩充:用户自定义新类型
劣势:
类型的Meta信息占用内存略多于非Class架构的类型系统(至少多占用16个字节/简单类型)
简单类型的内存分配至少增加4个字节(指向VMT表,如果不用虚方法或密封类倒是可以省略)
访问类型成员的效率略有下降
迟滞了编译速度,如:对于简单变量的声明,分配多少空间也必须要到类中计算。
一言以蔽之,就是牺牲效率换取CTS的优秀的可扩展性能和自举性能的。不是我所想象的对性能没有影响(只从模块的函数上看过于片面了)。唉,牺牲速度和内存换取的可拓展性到底值不值得。
相关文章推荐
- 常规类型系统(Common Type System)(2)
- 通用类型系统(Common Type System CTS)
- 基于ZigBee的物联网家居系统学习-android端app的问题The type java.lang.Class cannot be resolved. It is indirectly refer
- 常规类型系统(Common Type System)(1)
- 基于SOA体系的系统架构设计与规划
- 基于SOA的体系架构设计-全球酒店在线预订系统
- 一个基于ESB架构的企业系统构架(A framework of ESB based Enterprise System
- Atitit.vod 视频播放系统 影吧系统的架构图 架构体系 解决方案
- ERP与SOA结合:基于SOA的ERP体系架构
- 基于Dubbo的分布式系统架构(一)-分布式系统架构介绍
- 基于内容的推荐系统(content-based recommender system)
- 面向服务体系架构(SOA)和数据仓库(DW)的思考基于 IBM 产品体系搭建基于 SOA 和 DW 的企业基础架构平台
- 【迷你微信】基于MINA、Hibernate、Spring、Protobuf的即时聊天系统:10.项目介绍之架构(2)
- 架构师方向:基于.net平台remoting、DB2技术的大型分布式HIS系统架构及开发
- 基于Dubbo的分布式系统架构规划
- 从架构设计到系统实施——基于.NET 3.0的全新企业应用系列课程(视频课程讲师:徐晓卓)
- 京东基于Spark的风控系统架构实践和技术细节
- Extjs4 API文档阅读(一)——类系统(Class System)
- 基于.net平台remoting、DB2技术的大型分布式HIS系统架构及开发(项目架构师方向)