第三种情况:把相关类编译成一个dll,或者分开把每个类编译成一个dll,
这三种方法哪种性能好?

解决方案 »

  1.   

    这不是单独说分开好还是不分开好的问题,本身性能没有太大差异,引入dll要稍差一些。
    你主要区分类是否可以共用,也就是说这个类就是单独为这个service服务的,不可能被其他的程序使用,那就没必要单独写成dll;否则单独写成dll,这样便于其他程序使用。
      

  2.   

    我这个windows service逻辑简单,就是数据校验,要经常访问oracle数据库和标准数据核对,引用类库比较多(一共有500多k),包括enterprise libray, 占用cpu不高,就是占用内存比较多,平均达到10-20m左右,我看别人写的windows service都在10m以下,我反复用Gc回收内存,效果不明显
      

  3.   

    连续测试跑了2个晚上,想优化性能,我觉得内存泄露的可能性不大,timer设为55秒跑一次
      

  4.   

    window service相当于一个长期运行的程序一样,效率和这个好像扯不上关系吧。实现搂住这个功能可能不用自己写成序吧,Oracle早就给你提供了这个功能。如果大量访问I/O的话,自己写一个缓存类,异步调用读取(猜想,没实践过)
      

  5.   

    to liangxf0022:还要利用爱立信的组件发指令获取数据,比较数据不同点,生成数据核查报告,oracle能做到吗?
      

  6.   

    你在写ATM哦,Oracle可以将表直接映射到内存中,这样可以减少I/O操作。至于你说的情况,oracle 每秒钟能处理几十万的纪录,这个问题恐怕不是由于Oracle的I/O频颈造成的。