|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
есть основная прога, и несколько потоков. в основной проге куча таймеров, событий, обработок и всяко. если я запускаю доп потоки, то они, получается, делят общее процессорное время. и тогда основная прога начинает конкретно тормозить. как их сбалансировать? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2021, 01:12 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
Понизь приоритет дополнительных. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2021, 06:00 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
Mizer73, Подробнее. Правильнее так - "в программеА есть основной поток ГУИ дополнительные потоки (в ней же). Чтобы не тормозил ГУИ надо его поток (там где ГУИ) не нагружать всякой фигнёй. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2021, 07:17 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
Mizer73, только лишь средствами C++ этого добиться невозможно, но возможно через API операционной системы. К примеру, в Windows API есть такие функции, как SetThreadIdealProcessor или SetThreadAffinityMask . ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2021, 08:56 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
rdb_dev Mizer73, только лишь средствами C++ этого добиться невозможно, но возможно через API операционной системы. К примеру, в Windows API есть такие функции, как SetThreadIdealProcessor или SetThreadAffinityMask . Если в поток событий гуи где отрисовка окон напихать архивирование файлов, то согласен - добится невозможно. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2021, 12:08 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
Mizer73 есть основная прога, и несколько потоков. в основной проге куча таймеров, событий, обработок и всяко. если я запускаю доп потоки, то они, получается, делят общее процессорное время. и тогда основная прога начинает конкретно тормозить. как их сбалансировать? Тебе надо от модели запуска потоков перейти к использованию фиксированного пула потоков. У тебя есть UI поток который отвечает за графику приложения. Его не надо трогать. И есть допустим 4-8 рабочик потоков (workers) которые делают там архивацию файлов и прочее. Если потоки все заняты - то ставишь задачу в очередь. Пускай ждет. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2021, 14:23 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, тут такая фигня, что доп поток как раз нагрузил посекундным опросом входных данных с их разбором, отсылкой команд из стека входящих команд, и логика обработки команд. посему ему некогда быть в очереди, ему надо вертеться независимо от основного процесса, но не отбирать у него проц время, и самому не тормозить. добавил в этот поток таймеры, что бы не было слишком частых опросов/отправок/обработок, и занизил его приоритет. пока, удовлетворительно. но это под конкретные компы. хотя, если на этих компах сбалансированно, то и на более шустрых все будет около дела. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2021, 23:39 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
rdb_dev Mizer73, только лишь средствами C++ этого добиться невозможно, но возможно через API операционной системы. К примеру, в Windows API есть такие функции, как SetThreadIdealProcessor или SetThreadAffinityMask . DWORD SetThreadIdealProcessor( HANDLE hThread, DWORD dwIdealProcessor ); интересная тема... ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2021, 23:41 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
Mizer73 rdb_dev Mizer73, только лишь средствами C++ этого добиться невозможно, но возможно через API операционной системы. К примеру, в Windows API есть такие функции, как SetThreadIdealProcessor или SetThreadAffinityMask . DWORD SetThreadIdealProcessor( HANDLE hThread, DWORD dwIdealProcessor ); интересная тема... а как основному процессу выделить количество ядер? мгновенный вопрос без раздумий "как" ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2021, 23:41 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
Mizer73 основному процессу Это что такое? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.10.2021, 00:36 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
Mizer73, у "основного" процесса есть "основной" поток. Ему и выделяй! В чём проблема? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.10.2021, 17:00 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
Mizer73, Доп поток (там где нет очереди ГУИ) нагружай чем угодно. Правило не грузить только для того где ГУИ. Если не нравится не реагирующие окошки винды. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2021, 13:42 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
PetroNotC SharpДоп поток (там где нет очереди ГУИ) нагружай чем угодно. Он нагружает его вызовами Synchronize. Архангельский переворачивается в гробу. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2021, 14:01 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, убрал Synchronize - и все завертелось. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2021, 14:06 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
Ну конечно. Зачем нужен synchronize... Рудимент да и только... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2021, 17:28 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
Mizer73 Dimitry Sibiryakov, убрал Synchronize - и все завертелось. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2021, 15:30 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
rdb_dev Mizer73ал Synchronize - и все завертелось. да ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2021, 15:38 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
Mizer73 Dimitry Sibiryakov, убрал Synchronize - и все завертелось. Просто "убрал"? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2021, 16:20 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
Что-то в голове крутится какое-то изречение что дескыть гениально когда уже нечего убрать... ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2021, 20:25 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
mayton Что-то в голове крутится какое-то изречение что дескыть гениально когда уже нечего убрать... Все гениальное просто ? Обычно оно вырождается в "Все гениальное просто ... но неправильно" ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2021, 20:45 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
Dima T mayton Что-то в голове крутится какое-то изречение что дескыть гениально когда уже нечего убрать... Все гениальное просто ? Обычно оно вырождается в "Все гениальное просто ... но неправильно" Нет. Если так пересказать то теряется суть. Тут как раз речь идет не о явлении простоты. А о "процессе" внесения упрощений. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2021, 20:49 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
Dima T mayton Что-то в голове крутится какое-то изречение что дескыть гениально когда уже нечего убрать... Все гениальное просто ? Обычно оно вырождается в "Все гениальное просто ... но неправильно" 1) „Я беру камень и отсекаю всё лишнее.“ — Микеланджело Буонарроти 2)"Сложнее всего в мире достигнуть простоты — это крайняя граница опыта и последнее усилие гения". © George Sand. 3) Не работает? Попробуй ничего не делать! ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2021, 09:25 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Dima T пропущено... Все гениальное просто ? Обычно оно вырождается в "Все гениальное просто ... но неправильно" 1) „Я беру камень и отсекаю всё лишнее.“ — Микеланджело Буонарроти 2)"Сложнее всего в мире достигнуть простоты — это крайняя граница опыта и последнее усилие гения". © George Sand. 3) Не работает? Попробуй ничего не делать! Да. Джордж Санд. Похоже это оно. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2021, 12:51 |
|
сбалансировать потоки
|
|||
---|---|---|---|
#18+
maytonДа. Джордж Санд. Сразу видно писательницу. Технари формулируют проще: Keep It Simple, Stupid. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2021, 12:58 |
|
|
Start [/forum/topic.php?fid=57&msg=40101158&tid=2017164]: |
0ms |
get settings: |
17ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
492ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 598ms |
0 / 0 |