1.永不close的话,有什么影响?
2.频繁open/close,有什么影响?
3.环境是FAT over Nandflash,文件的open/close会增加读写flash的次数吗?

解决方案 »

  1.   

    open了必须close
    频繁的open close有无影响不接触 你可以吧内容读到内存不久不需要频繁的操作了吗
      

  2.   

    不关闭句柄,文件不能被删除等
    频繁open/close只不过会影响性能
      

  3.   

    MFC中,析构CFile时会自动close,即应用程序结束的时候必然close,且该文件为此模块专用,因此不存在“必须close”的说法,也不用考虑该文件被其他程序使用。
    会出现频繁写入的情况,不可避免。频繁open/close会影响哪方面的性能?会增加FAT读写次数吗?
      

  4.   

    既然你不想频繁的开关操作为什么不选择一次读到内存中内?你的内存很小吗?开来不管非常不好,资源泄漏了。我搞不明白FAT over Nandflash是啥东西,不过应该不好出现多次开关操作就over的flash吧,那样也太垃圾了,
      

  5.   

    看你怎么实例化的. CFile f; 定义个局部的.则在他销毁时。他会自己关闭文件句柄的. mfc里有源码.
    new的对象的化.需要自己销毁了.可以不用显示调用close.
      

  6.   


    不是读文件而是写文件
    FAT over Nandflash意思是基于nandflash的FAT文件系统,Nandflash存在读写寿命问题,而FAT文件系统经常改写文件分配表,又会增加对nandflash的读写次数,编码时需要注意
      

  7.   

    恩学习下。楼主做嵌入式的?不过个人认为影响性能的是你的多次写操作,而非open和close操作。个人感觉你应该关注的是如何减少读写操作而不是开关操作。静等大N解释下吧
      

  8.   

    没事频繁地打开和关闭文件肯定要占系统开销。
    这要看你的实际情况来定。比方你在一个函数里面 CFile f;对象是局部的,你需要经常调用这个函数,这样在函数里打开和关闭就没什么大问题。但是要是循环中成千上万次的调用,那就要考虑CFile对象在类里声明个类成员了,或者函数间传递CFile*pf指针(千万不要传对象),就不要每次Open Close了。具体情况要自己判断。
      

  9.   


    恩,是嵌入式。
    open、close不会影响性能吗?还是说同写操作比起来影响不大?
    不会“千上万次的调用”,否则要先考虑的就是flash读写了。
      

  10.   

    up
    open后的文件句柄不释放,直至程序结束,这个解决方法怎么样?
      

  11.   

    1.永不close的话,有什么影响?不行,除非你这个文件别人都不操作
    2.频繁open/close,有什么影响?对效率有影响
    3.环境是FAT over Nandflash,文件的open/close会增加读写flash的次数吗?