N
N
Nordman992020-12-14 12:24:03
Windows
Nordman99, 2020-12-14 12:24:03

How to determine which service is consuming a lot of CPU time?

Good day everyone! Available: Windows 8.1 x64
Faced a problem:
I began to notice that the svchost.exe process periodically eats a lot of CPU, instead of the task manager I use Process Hacker 2, I run it on behalf of SYSTEM using the psexec utility, so you can learn a lot more about processes than just running Process Hacker 2 even on behalf of the administrator, and in any case, much more than in general from the usual task manager,
and so. the svchost.exe process is not in the singular - I notice that from its running instances it loads the svchost CPU responsible for these services (the Services line):

5fd72b65607d0282234804.jpeg

5fd72dbe43572619353106.jpeg

I go to the process properties (Properties), in this case with PID 976, open the Threads tab and see the following:

5fd72c31c2a0e343750512.jpeg

Those. these two lines - ntdll.dll! RtlFreeUnicodeString+0x1370, at the very top, and periodically load the CPU up to almost 50%, and they are not connected with any services at all. I

went inside the top line and got the following content:

5fd72e4a7f675613741925.jpeg
Here it is in the title already under another TID'om because TID constantly changes, came later - already TID another.
Further, knowledge does not allow to understand the essence of the problem, can someone tell me - what is the problem?
Maybe all the same, some of the above-mentioned services, on screenshots, are to blame for such a CPU load?

There are no viruses, the left software is not worth it, Windows Defender with all updates works

Answer the question

In order to leave comments, you need to log in

2 answer(s)
I
InfoLabs, 2017-01-08
@InfoLabs

The solution is simple, here is a small example:

var a1,a2: array [1..10] of integer;
var b1,b2: array of integer;
a1 := a2; // копируется содержимое
b1 := b2; // копируется указатель

What's happening? And the fact that if you pass a static array to the procedure as a parameter in advance, you will get its contents, without the possibility of editing. Use dynamic arrays. The question is over!

R
Roman Mirilaczvili, 2017-01-07
@2ord

Variables are passed through var as a pointer to a structure.
I think it needs to be like this:
procedure generateStartWord(var _grid: gridType);

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question