麻烦大家帮我推荐一个算法(List View多数据的情况下如何提高性能)
是这样的,我做了一个游戏修改器,基于Windows Mobile的。
首先,Windows Mobile内存有限,所以算法一定要高效,少占内存。
我的程序在系统中只有一个实例在运行。
当在游戏界面上按特定的快捷键后呼出主程序,挂起目标进程,并对内存进行查找,查找的结果显示在List View中。
我的程序支持同时对多个进程进行查找,多个进程的查找结果互不影响。
也就是说,你可以一边修改游戏1的内存,一边修改游戏2的内存。
理论上支持无限个进程的修改。
-----------------------------------------------------------------------
问题1:
程序中关于搜索到的结果只有一个List View用于显示(不可能有多个,因为我前面说了“理论上支持无限个进程的查找”,
我总不能查找一个进程就创建一个控件显示结果啊,这不太现实。),请问,如何组织数据,使多个进程的查找结果互不影响,最重要
的是效率的。
关于“问题1”我的实现思路。
内部维护一个进程ID表,表示已被查找过的进程,如果用户在某一游戏界面上按了快捷键,呼出主程序,则先查找进程ID表,如果
ID表中有这个进程的ID,则说明这个进程先前被查找过,那么则调用查找结果,显示在List View 中。如果没有,
则向进程ID表中插入新项。开始新的搜索。 这只是我的一个初步的思路,还有可圈可点之处,大家有什么好办法?
-----------------------------------------------------------------------
-----------------------------------------------------------------------
问题2:
这个是基于“问题1”的,一个进程可以支持多个搜索任务,比如,你可以对 游戏1 新建二个搜索任务,二个搜索任务同是搜索“游戏1”
的内存,但二个搜索任务的结果互不影响,,请问这个功能怎么实现好。。。
说来说来,都是性能的问题,就是说怎么实现才能性能最高。。。