У меня есть определенная функция (ну, набор функций), которую я хочу запустить каждые 400 мс. Я не очень программист на С, и поэтому все, что находится за пределами стандартных библиотек, является для меня загадкой, а также совсем немного внутри них.Как измерить продолжительность выполнения функции (linux C)?
Моя первая мысль - использовать nanosleep для приостановки выполнения в течение 400 мс в каком-то цикле, но это, конечно, не учитывает время выполнения кода, который я буду запускать. Если бы я мог измерить его, и если бы он казался вполне уверенным, что он работал в течение той же приблизительной продолжительности после 10 или 20 тестов, я мог бы затем наносить() разницу. Конечно, это было бы не идеально, но, возможно, это было бы достаточно близко для первой попытки.
Как измерить время выполнения функции C? Или есть лучший способ сделать это в целом, и какие ключевые слова мне нужно искать?
Вы можете попробовать ftime() до и после вызова функции, а затем вычесть оба раза. Это не тривиально, поскольку у вас есть 2 поля «секунды» и «миллис» – LatinSuD