存档在 2012年3月

Linux版开发中,所以暂时QQ无法通信

2012年3月29日

联系请使用ICQ或MSN。

ICQ:54170422

MSN:HYZBOY@HOTMAIL。COM

 

全新流式数据访问模块

2012年3月25日

最近Java用的有点多,又开始了解了一下C#和WinRT,充分了解了一下他们在Stream上的设计。

外加上最近要将引擎移植到Linux/UNIX上,还需要支持PowerPC、ARM、mips等非x86处理器,各种需求开始大量暴露出来。比如大小头支持、不同编码及长度的wchar_t以及字符串支持、跨语言支持等等。

所以此次终于举起勇气开始重构和编写全新的stream式设计,已知的各种问题将在此次一举全部消灭,并带来全新的特性。更加的严格、更加的易用,更加的广泛。更加的易于学习。

  • 在绝大多数情况下,输入与输出将使用分开的流进行访问。以明确有些流式访问无法同时提供输入输出的问题。
  • 提供CanRead,CanWrite,CanSeek,CanRestart,CanSize等属性,以方便简测有些流式访问无法提供此类功能的问题。
  • 原始数据访问与格式数据访问分离,即类似Java的InputStream/DataInputStream设计。为支持不同数据格式处理提供功能。
  • 使用DataInputStream/DataOutputStream数据时,必须强制指定大小头,以保证在任何编码的处理器上,均可以正常访问数据。
  • 删去原本的ReadString/WriteString,改提供新的ReadUTF16LEChars/ReadUTF16BEChars、ReadUTF8String、ReadUTF16LEString/ReadUTF16BEString等函数。全面自适应任意wchar_t类型(UTF-16LE、UTF-16BE、UTF-32LE、UTF-32BE)。
  • 提供JavaInputStream/JavaOutputStream,基本对应java.io.DataInputStream/java.io.DataOutputStream,方便与Java程序交互。
  • 提供DecompressInputStream/CompressOutputStream、CryptInputStream/CryptOutputStream、MD5CheckInputStream/MD5CheckOutputStream、MergeOutputStream/SplitInputStream等辅助类。可使加密、压缩、校验、合并等各种功能无缝对接,随意组合。访问压缩加密数据同访问未加密压缩数据完全一致。

1024线程同时运作

2012年3月11日

这个示例存在很多年了,但这是第一次放视频出来,感谢现在的互联网啊!

下面视频中的每一个球的运动都由一个独立的线程控制,在一台Core 2 Quad 9300处理器上运行,使用Windows 8 CP操作系统,任务管理器显示cpu占用0%。