春暖花開
雪化了,花開了,春天來了
C++博客
首頁
新隨筆
新文章
聯系
聚合
管理
posts - 149,comments - 125,trackbacks - 0
<
2008年12月
>
日
一
二
三
四
五
六
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
常用鏈接
我的隨筆
我的評論
我參與的隨筆
留言簿
(9)
給我留言
查看公開留言
查看私人留言
隨筆分類
(144)
C#學習
c++學習(24)
Windows Mobile(32)
windows學習(42)
測試學習
多語言學習(1)
面試總結(6)
日常總結(11)
設計模式(2)
生活之樂(20)
網絡學習(5)
我思我想(1)
隨筆檔案
(149)
2010年11月 (1)
2009年12月 (1)
2009年10月 (5)
2009年9月 (6)
2009年8月 (10)
2009年7月 (27)
2009年6月 (22)
2009年5月 (6)
2009年4月 (12)
2009年3月 (11)
2009年2月 (10)
2009年1月 (5)
2008年12月 (17)
2008年11月 (9)
2008年10月 (4)
2008年7月 (2)
2008年5月 (1)
文章分類
(54)
C++(19)
CLR via C#(1)
UML學習(1)
Window Mobile(9)
春之心情(8)
界面控件學習(2)
算法學習(2)
雜項學習(12)
文章檔案
(54)
2011年10月 (1)
2009年7月 (4)
2009年6月 (1)
2009年5月 (1)
2009年4月 (6)
2009年3月 (1)
2009年2月 (1)
2008年12月 (6)
2008年11月 (11)
2008年10月 (14)
2008年8月 (1)
2008年7月 (6)
2008年5月 (1)
技術博客
螞蟻終結者
螞蟻終結者
Sleeping
woaidongmao
λ-calculus in C++Blogs
編程小區
李先靜的專欄
那誰的技術博客
萬連文
小P成長記_透過C++看人生
有意思的排序動畫
周星星
搜索
積分與排名
積分 - 323611
排名 - 76
最新評論
1.?re: vs 后綴名總結
評論內容較長,點擊標題查看
--best resume writers
2.?re: MoveFile、CopyFile和DeleteAndRenameFile[未登錄]
其實可以試試SHFileOperation這個API。
--riverqh
3.?re: 如何在方框里打對勾
太牛X了
--落雪
4.?re: MoveFile、CopyFile和DeleteAndRenameFile
評論內容較長,點擊標題查看
--1111
5.?re: 文件操作:CreateFile和WriteFile的學習
評論內容較長,點擊標題查看
--小松鼠
閱讀排行榜
1.?文件操作:CreateFile和WriteFile的學習(52776)
2.?SHELLEXECUTEINFO 和 ShellExecuteEx的使用(35451)
3.?回調函數和函數指針(13214)
4.?轉: C++ pair用法(12047)
5.?轉: IMSI前5位對應移動運營商名稱的列表(8117)
評論排行榜
1.?文件操作:CreateFile和WriteFile的學習(13)
2.?Windows Mobile 發送短信的問題(13)
3.?LoadString的一些小用法(8)
4.?回調函數和函數指針(7)
5.?關于debug和release的一點疑惑(7)
單個進程所占內存的疑惑
如何獲得單個進程所占內存的大小,也許很簡單,通過GetProcessMemoryInfo可以輕松獲得,然而那是在PC上。但在windows mobile 上,這個函數不存在,它的實現機制我也不太清楚。所以如何獲得一個進程的占用內存大小,則需要另辟蹊徑。不過目前,我還沒有找到。
我現在的方法,如下:
1
DWORD GetUsedMemory(DWORD pID)
2
{
3
DWORD memUsage
=
0
;
4
HANDLE hSnapShot
=
CreateToolhelp32Snapshot(TH32CS_SNAPHEAPLIST, pID);
5
if
(INVALID_HANDLE_VALUE
!=
hSnapShot)
6
{
7
HEAPLIST32 heapList;
8
heapList.dwSize
=
sizeof
(HEAPLIST32);
9
BOOL bOk
=
Heap32ListFirst(hSnapShot,
&
heapList);
10
for
(; bOk; bOk
=
Heap32ListNext(hSnapShot,
&
heapList))
11
{
12
HEAPENTRY32 he;
13
he.dwSize
=
sizeof
(HEAPENTRY32);
14
BOOL fOK
=
Heap32First(hSnapShot,
&
he, pID, heapList.th32HeapID);
15
for
(; fOK; fOK
=
Heap32Next(hSnapShot,
&
he))
16
{
17
memUsage
+=
he.dwBlockSize;
18
}
19
}
20
21
22
23
//
關閉快照句柄
24
CloseToolhelp32Snapshot(hSnapShot);
25
}
26
27
return
memUsage;
28
29
}
以上的這個方法與實際有出入。
有沒有更好的辦法呢?希望研究過的和正在研究的人,或者感興趣的人,能夠指點一二,讓我能夠走出困惑。
posted on 2008-07-29 16:21
Sandy
閱讀(1153)
評論(4)
編輯
收藏
引用
FeedBack:
#
re: 單個進程所占內存的疑惑
2008-07-30 08:35 |
aGAric
除了堆,程序還要占用其他一些內存,比如數據區,代碼區,還要和其他程序一起共享一些dll的東西,此外還有棧內存。
回復
更多評論
#
re: 單個進程所占內存的疑惑[未登錄]
2008-07-30 09:04 |
raof01
還有各種資源比如打開的文件,進程描述符,線程描述符等等。
回復
更多評論
#
re: 單個進程所占內存的疑惑
2008-07-30 12:46 |
qiyanhd
這個我也明白,有沒有什么辦法可以獲得進程的這些信息呢?
回復
更多評論
#
re: 單個進程所占內存的疑惑
2008-07-31 18:27 |
Kroc
我也正在研究,但是應該是可以做的,FdcSoft的任務管理器中計算的就和Windows Mobile6.1自帶的差不多。
回復
更多評論
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
【推薦】100%開源!大型工業跨平臺軟件C++源碼提供,建模,組態!
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Copyright ©2025 Sandy Powered By
博客園
模板提供:
滬江博客
区久久AAA片69亚洲
|
精品国产一区二区三区久久久狼
|
国产精品岛国久久久久
|
久久免费小视频
|
久久男人AV资源网站
|
囯产极品美女高潮无套久久久
|
久久精品一本到99热免费
|
国产成人无码精品久久久性色
|
97精品久久天干天天天按摩
|
性做久久久久久久久老女人
|
色8久久人人97超碰香蕉987
|
久久久久久久综合日本
|
囯产精品久久久久久久久蜜桃
|
精品国产91久久久久久久
|
久久强奷乱码老熟女网站
|
9191精品国产免费久久
|
囯产精品久久久久久久久蜜桃
|
久久久久香蕉视频
|
久久免费精品视频
|
久久婷婷成人综合色综合
|
亚洲人成无码久久电影网站
|
91精品久久久久久无码
|
久久91亚洲人成电影网站
|
亚洲AV无码久久精品狠狠爱浪潮
|
久久久国产精华液
|
久久成人精品
|
精品免费久久久久国产一区
|
久久婷婷综合中文字幕
|
久久99热只有频精品8
|
日日躁夜夜躁狠狠久久AV
|
久久经典免费视频
|
久久伊人精品青青草原日本
|
久久青青国产
|
亚洲人成无码网站久久99热国产
|
三级韩国一区久久二区综合
|
人妻无码久久精品
|
欧洲国产伦久久久久久久
|
欧美亚洲国产精品久久
|
久久天天躁夜夜躁狠狠
|
欧洲人妻丰满av无码久久不卡
|
久久亚洲日韩精品一区二区三区
|