我使用了CF 远程性能监视器,但它似乎只跟踪在托管世界中初始化的内存,而不是非托管世界中的内存。我只能假设如此,因为分析器中列出的数字远远低于允许的最大值(CE 5上为32mb)。使用RPM对特定应用程序进行分析后,我发现所有缓存的总使用量仅达到约12mb,然后慢慢缩小,因为(我认为)某些未经管理的内容开始占用更多内存。
系统中的内存滑块也显示设备的内存非常短缺。如果我杀死该进程,则滑块显示所有内存都回来了。所以这个托管进程必须(?)正在占用内存。
有没有简单一点的方法可以跟踪非托管内存使用情况,以某种方式使我能够将其与相应的P/Invoke调用匹配起来?
编辑:对于所有重新标记问题的人,它不是.NET,像这样标记问题会让事情变得混乱。它是.NETCF / Compact Framework。我知道它们看起来很相似,但它们是不同的,因为.NET很棒,而CF基本上只是一个NotImplementedException包装器。
有没有简单一点的方法可以跟踪非托管内存使用情况,以某种方式使我能够将其与相应的P/Invoke调用匹配起来?
编辑:对于所有重新标记问题的人,它不是.NET,像这样标记问题会让事情变得混乱。它是.NETCF / Compact Framework。我知道它们看起来很相似,但它们是不同的,因为.NET很棒,而CF基本上只是一个NotImplementedException包装器。