none
C#做WinCE开发,与VC++做WinCE开发,性能相差有多大??? RRS feed

  • 问题

  • C#做WinCE开发,与VC++做WinCE开发,性能相差有多大???

    在 x86的嵌入式设备上,一般内存都有256M以上,C#和VC++感觉不出来太大的差别。

    但是,如果用在Arm9 的 64M内存的设备上,那么内存就明显不够用了。 一般Arm9上,64M内存,跑WinCE6.0后,还有10M可以使用。


    这10M内存,要通过串口每1分钟采集一次数据(大概20个点),还要将采集的数据通过网口实时的传输进行Socket数据传输。

    问题一:
           用C#做的程序,随着程序跑的时间,可用的内存会越来越少,直至内存溢出。 为什么内存会越用越少,C#垃圾回收的时间周期是多长时间???     是因为有资源没有释放吗???

    问题二:
          如果用VC++,可以用10M的内存可以搞定1分钟内的数据采集和传输吗?

    问题三:如果有数据积累,那么硬件资源应该肯定不够用的吧。

    Science and technology is my lover.

    2014年8月12日 12:48

全部回复

  • 问题一:
           用C#做的程序,随着程序跑的时间,可用的内存会越来越少,直至内存溢出。 为什么内存会越用越少,C#垃圾回收的时间周期是多长时间???     是因为有资源没有释放吗???

    用C#,也要自己释放申请来的内存,不能依赖于系统的机制。
    内存越用越少,可以肯定是你的代码有问题。

    问题二:
          如果用VC++,可以用10M的内存可以搞定1分钟内的数据采集和传输吗?
    1分钟内有多大的数据量呢?
    1分钟的时间是太长了一些,一秒有多大的数据量呢?只采集和传输,传输的速率能不能达到要求?

    问题三:如果有数据积累,那么硬件资源应该肯定不够用的吧。
    数据积累?也就是说不是实时的数据,可以考虑保存到存贮介质中,不一定要用内存来缓存啊!

    Leo.Zheng

    2014年12月22日 2:19