|
|
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
есть основная прога, и несколько потоков. в основной проге куча таймеров, событий, обработок и всяко. если я запускаю доп потоки, то они, получается, делят общее процессорное время. и тогда основная прога начинает конкретно тормозить. как их сбалансировать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2021, 01:12:14 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
Понизь приоритет дополнительных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2021, 06:00:34 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
Mizer73, Подробнее. Правильнее так - "в программеА есть основной поток ГУИ дополнительные потоки (в ней же). Чтобы не тормозил ГУИ надо его поток (там где ГУИ) не нагружать всякой фигнёй. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2021, 07:17:59 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
Mizer73, только лишь средствами C++ этого добиться невозможно, но возможно через API операционной системы. К примеру, в Windows API есть такие функции, как SetThreadIdealProcessor или SetThreadAffinityMask . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2021, 08:56:15 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
rdb_dev Mizer73, только лишь средствами C++ этого добиться невозможно, но возможно через API операционной системы. К примеру, в Windows API есть такие функции, как SetThreadIdealProcessor или SetThreadAffinityMask . Если в поток событий гуи где отрисовка окон напихать архивирование файлов, то согласен - добится невозможно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2021, 12:08:07 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
Mizer73 есть основная прога, и несколько потоков. в основной проге куча таймеров, событий, обработок и всяко. если я запускаю доп потоки, то они, получается, делят общее процессорное время. и тогда основная прога начинает конкретно тормозить. как их сбалансировать? Тебе надо от модели запуска потоков перейти к использованию фиксированного пула потоков. У тебя есть UI поток который отвечает за графику приложения. Его не надо трогать. И есть допустим 4-8 рабочик потоков (workers) которые делают там архивацию файлов и прочее. Если потоки все заняты - то ставишь задачу в очередь. Пускай ждет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2021, 14:23:56 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
PetroNotC Sharp, тут такая фигня, что доп поток как раз нагрузил посекундным опросом входных данных с их разбором, отсылкой команд из стека входящих команд, и логика обработки команд. посему ему некогда быть в очереди, ему надо вертеться независимо от основного процесса, но не отбирать у него проц время, и самому не тормозить. добавил в этот поток таймеры, что бы не было слишком частых опросов/отправок/обработок, и занизил его приоритет. пока, удовлетворительно. но это под конкретные компы. хотя, если на этих компах сбалансированно, то и на более шустрых все будет около дела. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2021, 23:39:19 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
rdb_dev Mizer73, только лишь средствами C++ этого добиться невозможно, но возможно через API операционной системы. К примеру, в Windows API есть такие функции, как SetThreadIdealProcessor или SetThreadAffinityMask . DWORD SetThreadIdealProcessor( HANDLE hThread, DWORD dwIdealProcessor ); интересная тема... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2021, 23:41:05 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
Mizer73 rdb_dev Mizer73, только лишь средствами C++ этого добиться невозможно, но возможно через API операционной системы. К примеру, в Windows API есть такие функции, как SetThreadIdealProcessor или SetThreadAffinityMask . DWORD SetThreadIdealProcessor( HANDLE hThread, DWORD dwIdealProcessor ); интересная тема... а как основному процессу выделить количество ядер? мгновенный вопрос без раздумий "как" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2021, 23:41:58 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
Mizer73 основному процессу Это что такое? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2021, 00:36:31 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
Mizer73, у "основного" процесса есть "основной" поток. Ему и выделяй! В чём проблема? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2021, 17:00:10 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
Mizer73, Доп поток (там где нет очереди ГУИ) нагружай чем угодно. Правило не грузить только для того где ГУИ. Если не нравится не реагирующие окошки винды. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2021, 13:42:46 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
PetroNotC SharpДоп поток (там где нет очереди ГУИ) нагружай чем угодно. Он нагружает его вызовами Synchronize. Архангельский переворачивается в гробу. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2021, 14:01:45 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, убрал Synchronize - и все завертелось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2021, 14:06:47 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
Ну конечно. Зачем нужен synchronize... Рудимент да и только... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2021, 17:28:43 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
Mizer73 Dimitry Sibiryakov, убрал Synchronize - и все завертелось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2021, 15:30:32 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
rdb_dev Mizer73ал Synchronize - и все завертелось. да ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2021, 15:38:19 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
Mizer73 Dimitry Sibiryakov, убрал Synchronize - и все завертелось. Просто "убрал"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2021, 16:20:56 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
Что-то в голове крутится какое-то изречение что дескыть гениально когда уже нечего убрать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2021, 20:25:54 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
mayton Что-то в голове крутится какое-то изречение что дескыть гениально когда уже нечего убрать... Все гениальное просто ? Обычно оно вырождается в "Все гениальное просто ... но неправильно" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2021, 20:45:20 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
Dima T mayton Что-то в голове крутится какое-то изречение что дескыть гениально когда уже нечего убрать... Все гениальное просто ? Обычно оно вырождается в "Все гениальное просто ... но неправильно" Нет. Если так пересказать то теряется суть. Тут как раз речь идет не о явлении простоты. А о "процессе" внесения упрощений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2021, 20:49:42 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
Dima T mayton Что-то в голове крутится какое-то изречение что дескыть гениально когда уже нечего убрать... Все гениальное просто ? Обычно оно вырождается в "Все гениальное просто ... но неправильно" 1) „Я беру камень и отсекаю всё лишнее.“ — Микеланджело Буонарроти 2)"Сложнее всего в мире достигнуть простоты — это крайняя граница опыта и последнее усилие гения". © George Sand. 3) Не работает? Попробуй ничего не делать! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2021, 09:25:42 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
PetroNotC Sharp Dima T пропущено... Все гениальное просто ? Обычно оно вырождается в "Все гениальное просто ... но неправильно" 1) „Я беру камень и отсекаю всё лишнее.“ — Микеланджело Буонарроти 2)"Сложнее всего в мире достигнуть простоты — это крайняя граница опыта и последнее усилие гения". © George Sand. 3) Не работает? Попробуй ничего не делать! Да. Джордж Санд. Похоже это оно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2021, 12:51:30 |
|
||
|
сбалансировать потоки
|
|||
|---|---|---|---|
|
#18+
maytonДа. Джордж Санд. Сразу видно писательницу. Технари формулируют проще: Keep It Simple, Stupid. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2021, 12:58:45 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=40102091&tid=2017164]: |
0ms |
get settings: |
11ms |
get forum list: |
18ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
300ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
| others: | 293ms |
| total: | 715ms |

| 0 / 0 |
