Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Теоретический вопрос по System.Diagnostics.Process p = new System.Diagnostics.Process

58K
13 апреля 2010 года
bondd
2 / / 13.04.2010
Всем привет!!!!
Такой вопрос:
Мне надо в цикле запустить например 10 процессов (ниже код), так вот вопрос - мне нужно создавать 10 разных процессов
как правильно сие реализовать? Создавать столько же процессов, или можно как ниже в коде показано создавать постоянно новый процесс?

 
Код:
//так запускаем процессы
           начало цикла
            System.Diagnostics.Process p = new System.Diagnostics.Process();
            p.StartInfo.FileName = File;
            p.StartInfo.Arguments = Argum;
            p.StartInfo.CreateNoWindow = true;
            p.Start();
          коенц цикла
307
13 апреля 2010 года
Artem_3A
863 / / 11.04.2008
Цитата: bondd
Всем привет!!!!
Такой вопрос:
Мне надо в цикле запустить например 10 процессов (ниже код), так вот вопрос - мне нужно создавать 10 разных процессов
как правильно сие реализовать? Создавать столько же процессов, или можно как ниже в коде показано создавать постоянно новый процесс?

 
Код:
//так запускаем процессы
           начало цикла
            System.Diagnostics.Process p = new System.Diagnostics.Process();
            p.StartInfo.FileName = File;
            p.StartInfo.Arguments = Argum;
            p.StartInfo.CreateNoWindow = true;
            p.Start();
          коенц цикла



во первых завести некий контейнер(пул) процессов дабы контролировать их выполнение. во вторых не разу не понятно, что имеешь в виду, хочешь создать 10 разных процессов, то есть запустить 10 разных приложений, тогда заведи массив имен файлов и каждому процессу передавай имя своего файла. хочешь просто запустить 10 экземплюров одного приложения тогда совет 1 + твой код подойдут.

2.1K
13 апреля 2010 года
FreeWay
142 / / 03.05.2007
Цитата: Artem_3A
во первых завести некий контейнер(пул) процессов дабы контролировать их выполнение. во вторых не разу не понятно, что имеешь в виду, хочешь создать 10 разных процессов, то есть запустить 10 разных приложений, тогда заведи массив имен файлов и каждому процессу передавай имя своего файла. хочешь просто запустить 10 экземплюров одного приложения тогда совет 1 + твой код подойдут.



этот вопрос связан с соседним моим топиком :)
Например у меня есть 4 задачи (запуск файла с параметром) старт которых настроен на 12:00, и вот они все в цикле (мой код) стартуют.
если я правильно тебя понял, то я могу использовать мой код. Но если я хочу контролировать процесс - например время отработки, успешно не успешно завершение и т д, то мне надо использовать пул? Можешь пж поподробней про пул...

307
13 апреля 2010 года
Artem_3A
863 / / 11.04.2008
Цитата: FreeWay
этот вопрос связан с соседним моим топиком :)
Например у меня есть 4 задачи (запуск файла с параметром) старт которых настроен на 12:00, и вот они все в цикле (мой код) стартуют.
если я правильно тебя понял, то я могу использовать мой код. Но если я хочу контролировать процесс - например время отработки, успешно не успешно завершение и т д, то мне надо использовать пул? Можешь пж поподробней про пул...



В твою жеж мать, Кайл! (с)

залезь в сеть, скачай книжку товарисча Троелсена "язык программирования C# и платформа .Net x.0", открой главу посвященную многопоточному программированию, прочти, открой главу посвященную работе с процессами, прочти, возрадуйся. на это у тебя уйдет гораздо меньше времени, чем если бы я или кто то другой сначала долго вникал по твоим не внятным объяснениям в то, чего ты хочешь сделать, а потом еще и объяснял тебе как это делается.

зы: в двух словах, так называемый "пул", чего там тебе надо(я так до конца и не понял, потоков или процессов тебе надо) есть ни что иное, как некоторый набор объектов потоков\процессов которые описывают выполнение и состояние потоков\процессов, может быть массив, вектор, список. ты должен работать с объектами, а сам "пул" просто способ удобного их представления. в представленном топикстартером коде это не возможно, так как "р" это локальная переменная внутри тела цикла, а значит на каждой итерации создается и удаляется заново.

зызы:к слову в винапи пул потоков не много "другое"... эм, как то коряво ну вы меня поняли.

2.1K
13 апреля 2010 года
FreeWay
142 / / 03.05.2007
Цитата: Artem_3A



вполне внятно, главу прочту.
Спас тебе!

Я блин накачал кучу книг, и лежит эта куча, времени читать нет, по любому вопросу гугл выручает, а когда что то такое, то на форуме спрашиваю.

Еще раз спасиб...

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог