Форум программистов, компьютерный форум CyberForum.ru

Зацикливание дочерней программы - C++

Восстановить пароль Регистрация
 
LVV
56 / 56 / 3
Регистрация: 15.02.2010
Сообщений: 239
25.02.2013, 00:39     Зацикливание дочерней программы #1
Необходимо, например, 1000 раз выполнить откомпилированный файл (1.ехе).
Можно это сделать, например так:
for (int i = 0; i<1000; i++)
system ("start 1.exe");

но жалко винчестер.
Нельзя ли как нибудь зациклить выполнение процесса дочернего файла в оперативной памяти средствами родительской пограммы?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.02.2013, 00:39     Зацикливание дочерней программы
Посмотрите здесь:

зацикливание в C++ C++
C++ Зацикливание программы при вводе некорректных данных
C++ Зацикливание программы при вводе
зацикливание C++
Зацикливание C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
anmartex
...
 Аватар для anmartex
1699 / 1192 / 494
Регистрация: 12.02.2013
Сообщений: 1,978
25.02.2013, 08:32     Зацикливание дочерней программы #2
LVV, а на сколько принципиально использовать исполняемый файл? Может собрать как динамическую библиотеку, её подгрузить, да и выполнять до посинения?
Байт
 Аватар для Байт
13964 / 8795 / 1223
Регистрация: 24.12.2010
Сообщений: 15,930
25.02.2013, 09:45     Зацикливание дочерней программы #3
Цитата Сообщение от LVV Посмотреть сообщение
но жалко винчестер
В данном случае винчестер пожалеют за тебя. Система ввода-вывода поместит образ твоего 1.exe в оперативку (как это там называется - буфер, кэш?) и винчестер даже не шелохнется.
LVV
56 / 56 / 3
Регистрация: 15.02.2010
Сообщений: 239
25.02.2013, 14:27  [ТС]     Зацикливание дочерней программы #4
Цитата Сообщение от anmartex Посмотреть сообщение
LVV, а на сколько принципиально использовать исполняемый файл? Может собрать как динамическую библиотеку, её подгрузить, да и выполнять до посинения?
это принципиально, поскольку речь идёт о тестировании результатов работы дочерней программы.
Имеется 1.ехе-файл. Он запускается как дочерний, перехватываются потоки и проверяется работа на нескольких десятках тестов (т.е. запускать его нужно несколько десятков раз).
С перехватом потоков потихоньку разбираюсь Перехват потоков ввода/вывода
А вот с многоразовым запуском дочерних программ... ?

Цитата Сообщение от Байт
В данном случае винчестер пожалеют за тебя. Система ввода-вывода поместит образ твоего 1.exe в оперативку (как это там называется - буфер, кэш?) и винчестер даже не шелохнется.
Вы считаете, что
for (int i = 0; i<1000; i++)
system ("start 1.exe");

не будет грузить винчестер?
Проверил на практике... действительно всё намного оптимистичнее, чем я ожидал... Хотя на счет "не шелохнётся" я бы не утверждал И тем не менее - спасибо.
Байт
 Аватар для Байт
13964 / 8795 / 1223
Регистрация: 24.12.2010
Сообщений: 15,930
25.02.2013, 14:45     Зацикливание дочерней программы #5
Цитата Сообщение от LVV Посмотреть сообщение
Хотя на счет "не шелохнётся" я бы не утверждал
Ну, это конечно такой оборот речи, метафора, если хочешь
Я имел в виду, что твой 1.exe будет считан в оперативку скорее всего только один раз. А винчестер будет крутится, потому как он без этого не может. Как акулы, знаешь ? Они даже спят на дикой скорости.
А если ты так жалеешь свой несчастный винт, вот тебе еще совет. Создай виртуальный диск, и все свое хозяйство перепиши туда. (Как создавать виртуальный диск в Винде - не знаю, нужды не было. Знаю как в ДОСе, думаю в Винде - не сложнее)
Yandex
Объявления
25.02.2013, 14:45     Зацикливание дочерней программы
Ответ Создать тему
Опции темы

Текущее время: 09:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru