Как бы вы организовали работу шаблона в многопотоке?

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

Tvister

Client
Регистрация
09.09.2010
Сообщения
280
Реакции
44
Баллы
28
Есть шаблон который перед выполнением основной своей работы перезагружает интернет .bat файлом. Как лучше сделать чтобы работало в многопотоке?

Нужно чтобы, допустим, 10 потоков отработали на одном айпи, потом какой то один поток перезагрузил инет и опять 10 потоков по одному выполнению.

Пока пришло в голову только сделать счетчик в файле, но не очень удобно т.к. может быть разное количество потоков. И думаю может быть такое что несколько потоков одновременно обратятся к файлу и будет путаница.

Помогите плиз с идеями
 
Есть шаблон который перед выполнением основной своей работы перезагружает интернет .bat файлом. Как лучше сделать чтобы работало в многопотоке?

Нужно чтобы, допустим, 10 потоков отработали на одном айпи, потом какой то один поток перезагрузил инет и опять 10 потоков по одному выполнению.

Пока пришло в голову только сделать счетчик в файле, но не очень удобно т.к. может быть разное количество потоков. И думаю может быть такое что несколько потоков одновременно обратятся к файлу и будет путаница.

Помогите плиз с идеями
MySQL - запись в базу количества попыток, что бы не было путаницы в многопотоке, используйте c# lock + mysql - это даст вам возможность поставить в очередь потоки и получить нужный результат.
 
  • Оценить
Реакции: Tvister
MySQL - запись в базу количества попыток, что бы не было путаницы в многопотоке, используйте c# lock + mysql - это даст вам возможность поставить в очередь потоки и получить нужный результат.
Спасибо. А какие могут быть еще варианты без БД?
 
Спасибо. А какие могут быть еще варианты без БД?
ну.... таблицы, списки, уже указанный вами файл :) все рабочее, при условии использования лока.
например в таблице в соседней ячейке можно сделать счетчик. у кого 10-ка выпадает, тот и банкует. :)
 
  • Оценить
Реакции: Tvister

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