Я столкнулся с проблемой тайм-аута потока, я думаю, что это может быть проблема планирования потока, но я не уверен, если это так.Бизнес-сценарий выглядит следующим образом.
Мой коллега отвечает за написание службы.Он использует технологию многопоточности Java, а пул потоков - Executors.newFixedThreadPool.Служба должна обрабатывать некоторую сложную бизнес-логику.Сложная бизнес-логика нуждается во мне, чтобы поддержать ее.Я написал модуль алгоритма, упакованный в виде банки, и время измерения давления модуля алгоритма составило в среднем около 10 мс.Конечно, это результат однопоточной среды.Когда он помещает мой модуль в программу и запускает его, при использовании программы тестирования давления для проверки службы поток вычисляет алгоритм более чем на несколько минут.Конечно, это время жизни потока.Когда одна машина использует программу, вызываемую с теми же параметрами, время по-прежнему составляет несколько миллисекунд.Таким образом, возникает проблема.Почему истекло время ожидания?
Мой коллега не предоставил мне более подробную информацию о программе.Он думал, что программа отнимает много времени.Я был очень зол на его поведение, но проблему всегда нужно было решать.Я не знаю много об алгоритме планирования потока, он также.Теперь я хочу подсчитать эффективное время выполнения потока, но я не увидел соответствующего метода в объекте java.lang.Thread, я не знаю, есть ли другие способы его подсчета.
Я также хочу знать, есть ли другой способ объяснить эту проблему.