MPQ文件系统优化

上次用解析字符串的方式来列举目录和文件, 速度太慢

尤其像Common.mpq这样一个MPQ的listfile就几兆的情况下, 速度简直不能忍受

再想想ZipFileSystem中的FileEntry和DirEntry, 我想它们是用来缓存文件目录树的吧

在内存中进行查找肯定比读文件快, 更不用说去解析字符串了

还是加入进去好了

与Zip不同的是, 我没有把文件一次性读入内存. 因为mpq本身就支持Seek, 不需要读到内存去模拟. 如果想映射到内存进行快速访问, 可以用Map()和Unmap().

呵呵, Visual Paradigm画图就是爽, 个人自己用可以申请一个免费的授权

以后要慢慢学着自己设计东西了, 这也算一个瓶颈吧, 过去就好了^_^

N3的IO模块默认是跟主线程不在同一个线程里的, 这点比较头疼.....看来能只做一下简单的测试了, 或者自己在主线程里也开一个IoServer, 唉~~路漫漫

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏JavaEdge

JSP必备知识点servlet VS CGI如何实现 servlet 单线程模式servlet 页面间对象传递的方法有几种jsp VS servlet<jsp:include page=”includ

3696
来自专栏小曾

.Net高级进阶,教你如何构建企业模型数据拦截层,动态控制字段验证

如图:现在你要在控制器里面判断,账号名称、密码、邮箱不能为空,并且名称和密码不超过16位。

1231
来自专栏老九学堂

【新手必读】Java初学者,你遇到的问题都在这了

我们在初次接触某种编程语言时,都会有许许多多的疑问和困惑,老九君收集了小伙伴遇到的一些常见的Java基础问题,希望能对大家的Java学习有所帮助。 初识篇 1、...

3205
来自专栏deed博客

十天学会php详细文字教程_入门至精通

2412
来自专栏听雨堂

VB下中文URL编码问题的解决

        因为编码涉及的内容既多且烦,特别是vb的编码,又有诸多限制,所以在解决URL中文编码的时候走了很久的弯路。 问题:         我的VB...

6316
来自专栏Golang语言社区

Go语言并发编程总结

Golang :不要通过共享内存来通信,而应该通过通信来共享内存。这句风靡在Go社区的话,说的就是 goroutine中的 channel ....... 他在...

3127
来自专栏web开发

JavaSript模块规范 - AMD规范与CMD规范介绍

JavaSript模块化     在了解AMD,CMD规范前,还是需要先来简单地了解下什么是模块化,模块化开发?     模块化是指在解决某一个复杂问题或者...

2456
来自专栏阿杜的世界

Java Web技术经验总结(十六)

1276
来自专栏北京马哥教育

编写Linux Shell脚本的最佳实践

来自:Myths的个人博客 作者:myths 链接:https://blog.mythsman.com/2017/07/23/1/(点击尾部阅读原文前往) 前言...

4139
来自专栏Golang语言社区

Go语言并发编程总结

Golang :不要通过共享内存来通信,而应该通过通信来共享内存。这句风靡在Go社区的话,说的就是 goroutine中的 channel ....... 他在...

3569

扫码关注云+社区

领取腾讯云代金券