近期写了一个程序,计算量比较大。当时写程序的时候,为了尽多的利用高级语言的先进特性和Windows界面的快速开发而选择了C#,果然带来了预 期的效果:不用考虑内存回收,简捷的Windows界面开发。
但是程序完成之后,发现了一个问题,变成了一种负担(或许是心理负担,真实情况未必是这样),就是程序运行速度太慢!由于计算量大,所以跑一次程序 差不多要1个小时左右。由于机器是双核的,想利用MPI或者OpenMP做成多线程的,却发现C#不支持,想用vs2010中的并行计算,发现C#也不支 持!郁闷透顶。
以前做过一个高计算量的程序,用C#和C++比较过,C#的速度确实慢,这次不吸取教训,程序写完了,想再改成C++,却实在是缺乏动力了。
C#提供的内存回收,简捷的Windows界面开发实在是太诱人了,但是这效率总是让人放心不下。
唉,以后做类似的程序还是用C++的Console模式算了。