标签:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
/// Convert a FILETIME to ticks (ms)
DWORD
GetThreadTick( const
FILETIME& time
) { __int64
tick = MAKEDWORDLONG( time .dwLowDateTime,
time .dwHighDateTime );
return
static_cast <
DWORD >( tick /= 10000 );
}
FILETIME creation = { 0 },
exit
= { 0 }, kernel = { 0 },
user = { 0 }; ::GetThreadTimes( (
HANDLE )thread_id,
&creation,
& exit ,
&kernel,
&user )
// time in ms spent in kernel space
DWORD
kernel_tics = GetThreadTick( kernel );
// time in ms spent in user space
DWORD
user_tics = GetThreadTick( user ); |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
HANDLE
snapshot = ::CreateToolhelp32Snapshot( TH32CS_SNAPTHREAD, 0 );
if ( INVALID_HANDLE_VALUE != snapshot )
{ THREADENTRY32 te = { 0 };
te.dwSize =
sizeof ( THREADENTRY32 );
if ( ::Thread32First( snapshot, &te ) )
{
do {
// The te.th32ThreadID member will give us the thread ID of
// every thread running in the system.
// te.th32OwnerProcessID tells us which process owns that
// thread.
} while ( ::Thread32Next( snapshot, &te ) );
}
::CloseToolhelp32Snapshot( snapshot );
} |
获取 Windows Mobile 手机上进程列表和CPU占用率
标签:
原文地址:http://blog.csdn.net/u014311051/article/details/42269057