Запуск определенного экшена в 1 поток при многопотоке.

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

woober

Client
Регистрация
07.04.2015
Сообщения
211
Реакции
123
Баллы
43
Здравствуйте!

Возник такой вопрос, возможно ли при многопоточном выполнении шаблона сделать так чтобы, для примера, большая часть задач шаблона как и положено выполнялась параллельно, НО в конце шаблона несколько экшенов (или C# когд) выполнялись 1 раз, т.е. в 1 поток.

Другими словами 10 потоков шаблона выполняют параллельно проект и 1 из потоков достигает нужного места шаблона самым первым, начинает выполнять экшены (или C#), а другие потоки видят, что все... кто-то уже выполняет последнее действие в шаблоне и нам надо просто завершить работу, т.к. Нет нужды чтобы этой действие выполнялось параллельно.
Возможно ли это и в какую сторону искать...:au:
Может как то залочить что-то, как lock(SyncObjects.ListSyncer)
 
Можно сделать флаг на выполнение куска шаба - глобальная переменная, либо создавать/удалять файл-флаг, которые объявляют что нужный кусок кода начал выполняться и остальные потоки его пропускают
 
  • Оценить
Реакции: woober
согласен, файл-флаг - самое простое и надежное решение..
 
  • Оценить
Реакции: woober

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