@olegar
Пару дней назад столкнулся с такой же проблемой и для отлова ошибок сначала навтыкал контрольных точек с выводом в лог, но потом нашел более эффетивный способ. На ВРЕМЯ ТЕСТИРОВАНИЯ асинхронную функцию делаем простым зацикленным потоком, а вместо его вызова делаем передачу параметров (или просто используем флаг вызова) через глобальную переменную (ну естественно в "асинхронную" функцию на это время придется добавить цикл ожидания этого флага).
Колво потоков
-
-
@Zonteak
Можно нагрузку посмотреть. Через диспетчер задач хотя бы. Это не точный метод, но особо точного метода измерения вообще нет.
Если мощности под завязку набивать потоками, то это грозит крашем. Поэтому лучше не запускать новый поток если отсалось меньше 10% ЦПУ и 1 Гб ОЗУ (пример относительный).Вот как раз оставить запас ресурсов и есть то, что нужно для стабильной работы в многопотоке. Потому что нагрузка может скакать и внутри скриптов и на ПК по другим причинам.
-
Вот как по мне, оперативы 16гб, но проц грузится под 100% при 30 потоках (смотря кст потоки чего, от самого скрипта зависит. Например парсер в 170 работает спокойно(не гет/пост, в браузере)
Смотри, есть варик разогнать проц, посмотри видосики, но за темпой его следи (желательно под нагрузкой).
Лет 8-10 назад, когда озу было около 4гб на старом пк, вставлял флешки в пк и с них выделял память, чтоб юзал,когда оперативка использовалась на 100% (там само по себе предусмотрено, что пк бывает жд по свойствам оперативки юзает(вроде подкачкой называется), но там выделяемый объем ограничен, можно увеличить). Помогало, но именно для работы без лагов компа, не думаю, что данный метод будет эффективен при работе под нагрузкой, хотя попробовать можно)