春暖花開
雪化了,花開了,春天來了
C++博客
首頁
新隨筆
新文章
聯系
聚合
管理
posts - 149,comments - 125,trackbacks - 0
<
2009年10月
>
日
一
二
三
四
五
六
27
28
29
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
常用鏈接
我的隨筆
我的評論
我參與的隨筆
留言簿
(9)
給我留言
查看公開留言
查看私人留言
隨筆分類
(144)
C#學習
c++學習(24)
Windows Mobile(32)
windows學習(42)
測試學習
多語言學習(1)
面試總結(6)
日??偨Y(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++看人生
有意思的排序動畫
周星星
搜索
積分與排名
積分 - 325630
排名 - 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的學習(52816)
2.?SHELLEXECUTEINFO 和 ShellExecuteEx的使用(35471)
3.?回調函數和函數指針(13225)
4.?轉: C++ pair用法(12054)
5.?轉: IMSI前5位對應移動運營商名稱的列表(8157)
評論排行榜
1.?Windows Mobile 發送短信的問題(13)
2.?文件操作:CreateFile和WriteFile的學習(13)
3.?LoadString的一些小用法(8)
4.?關于debug和release的一點疑惑(7)
5.?回調函數和函數指針(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
閱讀(1158)
評論(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
博客園
模板提供:
滬江博客
色欲综合久久躁天天躁蜜桃
|
国内精品久久久久
|
久久久久国产精品人妻
|
久久91精品国产91久
|
少妇高潮惨叫久久久久久
|
91精品国产乱码久久久久久
|
久久综合久久综合久久综合
|
午夜精品久久久久9999高清
|
无码久久精品国产亚洲Av影片
|
亚洲精品国产成人99久久
|
亚洲国产天堂久久综合
|
久久99国产综合精品
|
亚洲欧美久久久久9999
|
久久国产精品99精品国产
|
久久福利片
|
欧美久久综合性欧美
|
国内精品久久久久影院老司
|
久久国产精品久久
|
天天躁日日躁狠狠久久
|
久久伊人精品青青草原日本
|
久久se精品一区精品二区
|
久久国产精品视频
|
久久国产一区二区
|
久久久一本精品99久久精品66
|
久久久久久A亚洲欧洲AV冫
|
久久r热这里有精品视频
|
久久婷婷五月综合97色一本一本
|
伊人色综合久久天天网
|
精品久久久久久无码人妻热
|
亚洲午夜无码久久久久小说
|
欧美亚洲色综久久精品国产
|
久久精品久久久久观看99水蜜桃
|
精品久久久久久国产牛牛app
|
精品久久久久久99人妻
|
久久ww精品w免费人成
|
97精品依人久久久大香线蕉97
|
久久久久亚洲av成人无码电影
|
亚洲乱亚洲乱淫久久
|
狠狠色丁香婷婷久久综合不卡
|
国产Av激情久久无码天堂
|
中文无码久久精品
|