Задача состоит в том, что есть у меня процесс который табулирует функцию, сделать обчисление данной функции в 2х,4х,8х процессах, подскажите как реализовать данные условия.
Поскольку то, о чём вы спрашиваете, похоже на учебное задание, я не буду давать конкретный код, а дам просто общие намётки того, как я бы это делал.
Самый простой вариант — разделение работы в самом начале, при котором задача «протабулировать функцию» делится на 2 (или 4, или 8) подзадач. Вы запускаете управляющий процесс, который делит задание на части, запускает рабочие процессы, и собирает у них результат.
Например, если вам нужно протабулировать функцию на отрезке [a, b], вы можете поделить отрезок на 8 частей, и каждая часть будет представлять отдельную подзадачу табуляции. После этого вы запускаете 8 копий рабочего процесса, передавая им каждому свою подзадачу как входной параметр (например, через командную строку).
Вам нужно будет ещё подумать о сборе результатов. Например, если все процессы пишут в выходные файлы (путь к которым тоже бы неплохо передать на вход), в конце вам нужно будет собрать все результаты в один выходной файл.
Более сложный вариант — общение процессов через ту или иную разновидность IPC. Например, рабочие 8 процессов могут писать не в файл, а в выходной поток, ваш управляющий процесс должен будет перенаправить потоки ввода-вывода рабочих процессов, и собирать результат из них.
Ещё более продвинутый вариант — динамическое распределение нагрузки между рабочими процессами. Для этого вам нужна будет двусторонняя коммуникация с рабочими процессами. Вы запускаете ваши рабочие процессы, и выдаёте им задание на табуляцию маленькой части исходного отрезка. Тот процесс, который первым закончит, получает следующее задание. Таким образом, ни один рабочий процесс не будет простаивать.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Xamarin с помощью чего и как можно нарисовать график из бесплатных библиотек? В основном рекомендуют Syncfusion или TeeChart, но они платные и с достаточно...
ПриветствуюИнтересует где можно узнать побольше про разделение GUI и рабочего кода
Есть некоторые файлы, которые программа должна сравнивать(они будут далеко не всегда текстовые), причем они могут быть большого размера,...