Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.03.2016, 22:43   #1
nomerasd
Пользователь
 
Регистрация: 07.03.2016
Сообщений: 16
По умолчанию обработка массива int

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

есть кусок кода для массива string:
PHP код:
poiskslova = new List<string>();
string[] file File.ReadAllLines(textBox1.Text);
foreach (var 
line in file)
try { 
poiskslova.Add(line); }
catch { } 
который в дальнейшем передаётся в работу потока:
PHP код:
lock (poiskslova)
{
if (
poiskslova.Count == 0)
{
manager.StopJob("Готово!");
return;
}
else
{
odinzapros poiskslova.First(); 
poiskslova.Remove(odinzapros); 
}

как то же самое сделать для массива int?
PHP код:
private void generacia()
{
int[] massiv = new int[100000];
int page 0;
for (
page 1page 100000page page 100)
{
massiv[page] = page;
}
foreach (var 
pags in massiv)   
{
try { 
poiskslova.Add(pags); } // вот тут никак не могу понять, как правильно
catch { }


Последний раз редактировалось nomerasd; 07.03.2016 в 22:46.
nomerasd вне форума Ответить с цитированием
Старый 07.03.2016, 22:45   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Вопрос-то где?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 07.03.2016, 22:49   #3
nomerasd
Пользователь
 
Регистрация: 07.03.2016
Сообщений: 16
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Вопрос-то где?
ого как быстро!!!
начало мне нравится!!!
nomerasd вне форума Ответить с цитированием
Старый 07.03.2016, 23:02   #4
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

pags.ToString() что ли надо? Или List<int>? Какая цель?

А зачем там try catch? При добавление в список вроде не может никаких исключений выпасть.
Да и вообще пустой catch без обработки исключения (например вывода его, завершения или повтора работы и т.д.) редко когда является хорошим решением.

Вместо List тут наверно Queue удобнее и логичнее.
А если взять ConcurrentQueue https://msdn.microsoft.com/en-us/lib...vs.110%29.aspx, то и lock не понадобится.
Кстати, он зачем тут? Потоков много или 1?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 07.03.2016 в 23:06.
Alex11223 вне форума Ответить с цитированием
Старый 07.03.2016, 23:24   #5
nomerasd
Пользователь
 
Регистрация: 07.03.2016
Сообщений: 16
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Кстати, он зачем тут? Потоков много или 1?
видно сразу, человек разбирается! задаёт правильные вопросы.
разворачиваю свой вопрос.

пишется парсер html на библиотеке viking. надеюсь против неё ничего не имеете. познания мои в данной области малы, но как-то меньше кода получается. но не важно. в данном куске кода он роли не играет.

запрос на страницу html формируется вида:
PHP код:
string zapros = @"http://yandex.ru" page "&extended"
страниц для парсинга оказалось очень много и как выход из данной ситуации, многопоточность.
номера страниц идут: 1, 101, 201, ...
и что бы запустить их в многопоток надо произвести lock номера страницы (что бы другой поток не перехватывал данный номер).
вот и решил: создать массив, и из него брать номер, обвернув в lock.
как довести этот int до самого запроса?

пробовал List. он тоже ругается, в месте poiskslova.Add(pags); т.к. int в string ...

P.S.
яндекс.ру взят для примера.

Последний раз редактировалось nomerasd; 07.03.2016 в 23:45.
nomerasd вне форума Ответить с цитированием
Старый 07.03.2016, 23:48   #6
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

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

Для подставления в строку с адресом нет разницы.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 07.03.2016, 23:54   #7
nomerasd
Пользователь
 
Регистрация: 07.03.2016
Сообщений: 16
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Ну определитесь int вам нужен или string, и либо преобразовывайте, либо список нужного типа используйте.

Для подставления в строку с адресом нет разницы.
мне нужно число подставить строку запроса. а как, с учётом многопоточности?!

Последний раз редактировалось nomerasd; 07.03.2016 в 23:58.
nomerasd вне форума Ответить с цитированием
Старый 07.03.2016, 23:56   #8
nomerasd
Пользователь
 
Регистрация: 07.03.2016
Сообщений: 16
По умолчанию

можно конечно, их из txt файла подгрузить цифры/номера страниц, загрузить их в string [] массив.

но мы ж не ищем лёгких путей
хотелось бы обработать цифры в софте.

Последний раз редактировалось nomerasd; 07.03.2016 в 23:58.
nomerasd вне форума Ответить с цитированием
Старый 07.03.2016, 23:57   #9
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

И для кода выше с адресом, и для многопоточности не имеет значения что в списке, числа или строки.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 08.03.2016, 00:01   #10
nomerasd
Пользователь
 
Регистрация: 07.03.2016
Сообщений: 16
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
И для кода выше с адресом, и для многопоточности не имеет значения что в списке, числа или строки.
как?
nomerasd вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка массива с числами (разделить на два отдельных массива и вывести все числа, которые делятся на X ) Grag963 Помощь студентам 2 21.11.2013 16:51
инициализация массива, вывод массива и обработка массива должны быть реализованы с помоshью функций airesjke Помощь студентам 0 02.03.2012 16:14
функция float average(int arrray[],int from,int to) yuliyayuliya Помощь студентам 0 25.04.2011 21:55
Конверт int массива в char массив Raptor Помощь студентам 14 23.03.2010 00:50
Побитовая запись из int-массива в переменную phobos Общие вопросы C/C++ 2 25.05.2009 01:52