Я пытаюсь создать команду, похожую на time в Ubuntu, которая даст мне время, затраченное командой, следующей за ней в командной строке.
Моя логика здесь состоит в том, чтобы использовать fork, чтобы создать дублирующий процесс в моей программе и запустить вторую команду, используя этот процесс. Я получаю значение времени непосредственно перед началом и сразу после окончания разветвленного процесса, а затем отображаю разницу между этими двумя значениями времени. Я не мог придумать другого способа вернуть управление из второй программы обратно в первую.
Очевидно, что это уступает встроенной команде time в Ubuntu, и это может быть одной из причин, почему мои значения не совсем соответствуют значениям, сообщаемым time.
Можете ли вы объяснить логику встроенной команды time и как я могу улучшить свою программу? Конечно, я просто хочу отобразить общее время, затраченное на этот процесс. Измерять время «пользователя» и «sys» выходит далеко за рамки моего текущего уровня способностей.
Мой код:
include
#include
#include
#include
#include
#include
int main(int argc, char *argv[])
{
long long int min, hr, day, i;
double seconds, seconds1;
struct timeval tv_start, tv_end;
errno = 34;
int idp = getpid(), idc;
idc = fork();
char **arglist = new char *[argc];
for (int i = 0; i < argc - 1; i++)
arglist = argv[i + 1];
arglist[argc - 1] = NULL;
gettimeofday(&tv_start, NULL); // start of process
if (idc == -1)
{
std::cerr
Подробнее здесь: https://stackoverflow.com/questions/798 ... tu-using-c
Попытка создать команду, похожую на «время» в Ubuntu, используя C++. ⇐ C++
Программы на C++. Форум разработчиков
1771149582
Anonymous
Я пытаюсь создать команду, похожую на time в Ubuntu, которая даст мне время, затраченное командой, следующей за ней в командной строке.
Моя логика здесь состоит в том, чтобы использовать fork, чтобы создать дублирующий процесс в моей программе и запустить вторую команду, используя этот процесс. Я получаю значение времени непосредственно перед началом и сразу после окончания разветвленного процесса, а затем отображаю разницу между этими двумя значениями времени. Я не мог придумать другого способа вернуть управление из второй программы обратно в первую.
Очевидно, что это уступает встроенной команде time в Ubuntu, и это может быть одной из причин, почему мои значения не совсем соответствуют значениям, сообщаемым time.
Можете ли вы объяснить логику встроенной команды time и как я могу улучшить свою программу? Конечно, я просто хочу отобразить общее время, затраченное на этот процесс. Измерять время «пользователя» и «sys» выходит далеко за рамки моего текущего уровня способностей.
Мой код:
include
#include
#include
#include
#include
#include
int main(int argc, char *argv[])
{
long long int min, hr, day, i;
double seconds, seconds1;
struct timeval tv_start, tv_end;
errno = 34;
int idp = getpid(), idc;
idc = fork();
char **arglist = new char *[argc];
for (int i = 0; i < argc - 1; i++)
arglist[i] = argv[i + 1];
arglist[argc - 1] = NULL;
gettimeofday(&tv_start, NULL); // start of process
if (idc == -1)
{
std::cerr
Подробнее здесь: [url]https://stackoverflow.com/questions/79889566/trying-to-make-a-command-similar-to-time-in-ubuntu-using-c[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия