Скачать MetaTrader 5

Нагрузка на CPU...

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Хочешь стать известным разработчиком? Выполняй заказы трейдеров в сервисе Фриланс!
Sergey Sartakov
1287
Sergey Sartakov 2014.12.03 01:59 

Есть у меня одна програмка,ничего особого , читает один сайт и парсит прочитанные страницы.

1.  В компе запущен один терминал, запускаю на этом терминале нашу програмку на 9 символах,

все 9 экзэмпляров прекрасно работают, никаких проблем, заметим - здесь имеем  1 процесс с 9 потоками внутри процесса, всего 10 потоков.

2.В компе запущено   11 терминалов, в каждом терминале запускаю

по одному экземпляру  нашей программы, вот тут и возникает проблема - терминалы становятся как замороженные,

смотрю на загрузку процессора - загрузка близка к 100 % ! - здесь имеем 11 процессов, в каждом поцессе 1 поток, всего 22 потока.

10 потоков  и 22 потока - чисто в этом причина ?  

Для чтения сайта использую WinInet.dll, может в ней дело ?

 

 

 


MetaQuotes
Админ
24944
Renat Fatkhullin 2014.12.03 06:32  
Вы загляните в таск менеджер перед рассуждениями о потоках. Не забудьте включить колонку с потоками там.
Sergey Sartakov
1287
Sergey Sartakov 2014.12.03 14:22  

заглядовал, еще раз заглянул - при пустом терминале, в нем работает от 10 до 13 потоков, под потоком я понимаю Threads.

по моим представлениям, именно потоку Windows выделяет время процессора. 

а что не так с моими рассуждениями ?

MetaQuotes
Админ
24944
Renat Fatkhullin 2014.12.03 15:42  
more:

заглядовал, еще раз заглянул - при пустом терминале, в нем работает от 10 до 13 потоков, под потоком я понимаю Threads.

по моим представлениям, именно потоку Windows выделяет время процессора. 

а что не так с моими рассуждениями ?

Вот тут ошибка:

В компе запущено   11 терминалов, в каждом терминале запускаю. здесь имеем 11 процессов, в каждом поцессе 1 поток, всего 22 потока.

В лучшем случае не 22 потока, а 11 * 13 = 143

Sergey Sartakov
1287
Sergey Sartakov 2014.12.03 16:46  
Renat:

Вот тут ошибка:

В лучшем случае не 22 потока, а 11 * 13 = 143

ну, это просто опечатка. так что, тормоз возникает по причине большого количества потоков ?

или дело все-таки в специфике работы WinInet.dll  ?

ведь если во всех терминалах работают другие EA , то таких проблем нет ...

MetaQuotes
Админ
24944
Renat Fatkhullin 2014.12.03 19:22  

Все исключительно в ваших программах, кода которых мы не видим, но вынуждены как-то реагировать :)

Добавьте принты и найдете где тормоза. 

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий