Регистрация Главная Сообщество
Сообщения за день Справка Регистрация

C# Многопоточность

-

Вопросы и ответы, обсуждения

- Ваши вопросы по C# только в данном разделе

Ответ
 
Опции темы
Старый 06.04.2014, 14:25   #1
 Пехотинец
Аватар для XRASER
 
XRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краях
Регистрация: 27.11.2010
Сообщений: 84
Популярность: -1831
Сказал(а) спасибо: 249
Поблагодарили 57 раз(а) в 27 сообщениях
Отправить сообщение для XRASER с помощью ICQ Отправить сообщение для XRASER с помощью Skype™
 
Question C# Многопоточность

Прочитал множество статей о многопоточности, но все равно одно не понятно.

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

Или встречный вопрос, как создавать потоки, выдавая эту самую строку из файла, а после того, как они ее прочекали - следующую.

P.S. Извините если туплю, впервые пытаюсь разобраться с многопоточностью, без многопоточности все работает, но это нельзя назвать "брутфорсом".
________________
[Ссылки могут видеть только зарегистрированные пользователи. ] - сообщество серверов MineCraft.
RPG, Survival, Hi-Tech сервера. 24\7. Без лагов.
  Ответить с цитированием
Старый 06.04.2014, 14:48   #2
Почетный Пользователь
 Сержант
Аватар для MembRupt
 
MembRupt сломал счётчик популярности :(MembRupt сломал счётчик популярности :(MembRupt сломал счётчик популярности :(MembRupt сломал счётчик популярности :(MembRupt сломал счётчик популярности :(MembRupt сломал счётчик популярности :(MembRupt сломал счётчик популярности :(MembRupt сломал счётчик популярности :(MembRupt сломал счётчик популярности :(MembRupt сломал счётчик популярности :(MembRupt сломал счётчик популярности :(
Регистрация: 18.07.2013
Сообщений: 148
Популярность: 83981
Сказал(а) спасибо: 564
Поблагодарили 258 раз(а) в 195 сообщениях
 
По умолчанию Re: C# Многопоточность

Потоки необходимо синхронизировать. В вашем случае можно в критической секции брать первую строку, а затем либо удалять её(но при неудаче возвращать), либо следить отдельным массивом данных, где будет указано - аккаунт проверен\не проверен\в процессе проверки
  Ответить с цитированием
Пользователь сказал cпасибо:
XRASER (09.07.2014)
Старый 06.04.2014, 17:48   #3
 Сержант
Аватар для Yukikaze
 
Yukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядом
Регистрация: 01.10.2011
Сообщений: 128
Популярность: 5723
Сказал(а) спасибо: 25
Поблагодарили 174 раз(а) в 105 сообщениях
 
По умолчанию Re: C# Многопоточность

Простейший способ
Код:
object sync = new object();
IEnumerable<string> ReadStream(Stream stream)
{
    using(StreamReader sr = new Streamreader(stream)
    {
        while(!sr.EndOfStream)
            lock(sync)
                yield return sr.ReadLine();
    }
}
Дальше можно работать с получившимся перечислением как душе угодно
________________
Talk is cheap. Show me the code
— Linus Torvalds
  Ответить с цитированием
2 пользователя(ей) сказали cпасибо:
DartSkywalker (10.04.2014), XRASER (09.07.2014)
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Помогите!] Многопоточность C# sith999 Вопросы и ответы, обсуждения 1 31.03.2013 10:38
Многопоточность Realizt Вопросы и ответы, обсуждения 15 28.11.2012 17:33
[Помогите!] Многопоточность =PaLeTiZaToR= Вопросы и ответы, обсуждения 0 09.10.2012 22:03
C# Многопоточность thezoke C# 11 28.03.2012 00:55

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 14:44.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net