发帖    主题    评论    推荐    标签    作者    订阅    查搜    注册   登陆   关注
 
面向对象 设计模式 领域驱动设计 云架构 框架 开发教程 SOA 大数据 扩展性 并发编程 EDA 分布式 函数编程
1 2 3 下一页 Go 3

疑问?

2002-10-25 14:55
赞助商链接

我按照JIVE的数据调用格式
写到DatabaseObjectIterator()里
但结果测试是
按照传统方法写到Iterator里显示到页面的时间
分别测了三次10秒,8秒和7秒

而写到DatabaseObjectIterator()显示均在30秒以上
分别是43,43,36.9

这是为什么??
不是和banq有矛盾吗?
"Iterator也是个模式,在Jive中大量使用了Iterator,我以前很奇怪,为什么他没事自己写个Iterator,现在知道原因了,这样节省内存,而且效率高。
"

2002-10-25 15:15

你这样测试第一的态度非常好。

现在问题是,测试结果,取决于你的测试思路设计。Iterator模式对于大数据量的提取是有好处的,估计你测试的是小数据量。

2002-10-27 22:11

Iterator对于数据封装提供了更高的灵活性,但性能上绝对不是优势.因为接口越向上,灵活性越高,反之性能也越降低,这是必然的,假如接口越向上性能越高哪白痴还用它的子类啊.

JAVA数据结构中要想考虑性能第一,当然是数组.只有它才是直接访问元素的指针(JAVA的引用),别的数据结构,要想灵活和性能兼顾,ArrayList是首选.只考虑灵活性当然是Iterator,Collection这些项层接口了.Vector是效率最低的.

要看效率,主要看数据结构遍历节点(元素)方法,Iterator的遍历是next()方法,这是JAVA的可怜之处,因为JAVA的指针不是指向元素本身,而是指向元素中间,最初是指向每一元素之前比如・●・●・●・●・●・大点代表元素,最先指向第一个小点,next()时指针指到第二小点,就返回刚才指针跳过的这个元素,即使你不用这个元素,也要POP出来。也就是要重新开空间生成这个对象。然后再回收这个对象,Iterator根本谈不上效率。

cc
2002-10-28 10:00

这位仁兄曲解了jive的意思,jive的Iterator改造了java的Iterator,我们在不改变Iterator结构的情况下(还用・●・●・●・●・●・这样的点表示),把●换成储存空间很小的点(主键),以此达到节省空间,提高效率的优势!

2002-10-28 10:05

对,是"换成储存空间很小的点(主键)",
但在Iterator中根据你那主健还得相应的调用数据库,那资源不都消耗在了调用数据库上吗???

3Go 1 2 3 下一页

赞助商链接

赞助商链接

返回顶部

移动版 关于本站 使用帮助 联系管理员 最佳分辨率1366x768
OpenSource JIVEJDON Powered by JdonFramework Code © 2002-20 jdon.com