В чем разница между многопотоком и запуском множества дублей

  • Автор темы Автор темы baimkin
  • Дата начала Дата начала

baimkin

Client
Регистрация
04.08.2015
Сообщения
283
Реакции
111
Баллы
43
Добрый день!
Назрел вопрос, в чем разница между запуском проекта в большое количество потоков и запуском множества копий проекта в один поток? И при запуске в большое кол-во потоков можно вывести окно каждой копии проекта для отображения, в многопоточном режиме я так понимаю можно отобразить только одно окно выполнения?
 
думаю технически никакой. Только в многопотоке показывает все инстансы сразу, а в дублях можно показывать по-отдельно на каждый дубль.
 
Разница в потребляемых ресурсах. Это зависит от того что у вас Настройках стоит где кол-во потоков на процесс. Запустить один проект в 50 потоков намного экономичнее, чем 50 проектов в 1 поток.
 
Разница в потребляемых ресурсах. Это зависит от того что у вас Настройках стоит где кол-во потоков на процесс. Запустить один проект в 50 потоков намного экономичнее, чем 50 проектов в 1 поток.
они же работают в одной базе. Почему так?
 
работа с файлами и в том и в ином варианте будет правильно вестись? не будут ли как то путаться переменные? почему то ошибки пошли когда запустил несколько копий проекта.
 
Разница в потребляемых ресурсах. Это зависит от того что у вас Настройках стоит где кол-во потоков на процесс. Запустить один проект в 50 потоков намного экономичнее, чем 50 проектов в 1 поток.
Немного неточно. Это зависит от того как работают эти однопоточные проекты. Если там нет галки в свойствах проекта "Запускать в выделенном процессе", то по ресурсам получится все то же самое.

работа с файлами и в том и в ином варианте будет правильно вестись? не будут ли как то путаться переменные? почему то ошибки пошли когда запустил несколько копий проекта.
А как с файлами работаете? Какими экшенами? Что за ошибки?
 
Два файла, первый - список каталогов, второй - номер каталога по которому начнется работа проекта, соответственно каждая копия проекта при получении номера начального каталога увеличивает его на 1 и сохраняет файл и т.д делает каждая копия проекта. Поэтому важно чтоб при обращении сразу 2х и более копий к файлу одновременно они не начали работу над одним и тем же каталогом, т.е не подхватили один и тот же номер начального каталога не успев увеличить его значение.

Ошибку я заметил один раз в вычислениях, такое чувство было что подсчеты были сделаны по данным какой то из копий запущенных проектов. Поэтому появился вопрос, если я например запускаю 10 копий проекта из одной и той же папки то не будут ли они смешивать как то переменные из соседних копий?
 
А не проще брать записи из каталога с удалением строки и записью ее в конец? Зачем мудрить еще с доп. файлами?
 
А не проще брать записи из каталога с удалением строки и записью ее в конец? Зачем мудрить еще с доп. файлами?
а как тогда каждый новый поток или дубль будет понимать что предыдущий поток уже отработал данный каталог и ему надо переходить к следующему?
 
строки то уже не будет которую нужно обрабатывать (вернее она будет внизу файла) и другой поток возьмет следующую строку
 
Строки не удаляются. А как она вниз должна попасть? это можно только перезаписью отработанной строки в конец файла делать, мне так не очень годится поэтому у меня каждый поток просто забирает номер с которого он начнет, после забора увеличивает этот номер на 1 и записывает обратно в файл для следующего инстанса.
 
Возможно из за этого ошибки и вонзикают, т.к. между взятием строки из одного файла и записью в другой есть время...
Если не хотите изменять исходный файл копируйте его при старте и работайте с ним
 
когда списки и таблицы привязаны в шаблоне - они висят в оперативке, а изменения переодически бакапятся в файл.
т.е. когда мы берем строку из списка с удалением в одном шаблоне - все другие шаблоны видят это изменение и не могут взять эту же строку, потому что изменения происходят в "уме" зеннопостера, не влияя на файлы тут и сейчас.
 
Возможно из за этого ошибки и вонзикают, т.к. между взятием строки из одного файла и записью в другой есть время...
Если не хотите изменять исходный файл копируйте его при старте и работайте с ним

Если делать через кубики то зенка сама блокирует другим потокам доступ на время записи и рассинхронизации не должно быть, а если через C# то надо блокировать руками.
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)