Вертикальная переменная или разделитель



  • Подскажите как сделать вертикальную переменную.

    К примеру я взял 10 потоков. 1 ресурс файл тхт

    поток1
    ссылка1
    ссылка2
    ссылка3
    поток2
    ссылка1
    ссылка2
    ссылка3

    Как сделать так, чтобы в одном ресурсе были все данные и брались каждые для своего потока ?

    А чтобы можно было ещё сделать горизонтальный разделитель.

    поток1
    ссылка1;сообщение1
    ссылка2;сообщение2
    ссылка3;сообщение
    поток2
    ссылка1;сообщение1
    ссылка2;сообщение2
    ссылка3;сообщение3

    Это важно !



  • Ребята ну что есть у кого решение данной проблемы ?



  • Если я тебя правильно понял то так
    0_1485752807343_1.jpg



  • Можно вставлять нужный номер потока в каждой строке перед каждой ссылкой. Затем парсить каждую строку и выполнять нужные действия только в том случае, если номер потока нужный. Либо ищем подстроку в строке через javascript. Будет больше пустых действий перебора. Пока не знаю, как сделать так, чтобы поток брал только строки с нужным содержимым. Подозреваю, такой штатной функции в bas нет.



  • Списки обрабатываются синхронно. т.е. список организованный в потоке работает только для этого потока и никакие левые данные из др потоков туда не попадают



  • Список будет выглядеть так как я написал выше. Это то что он будет публиковать !

    Ещё будет список ссылок куда он будет публиковать !

    Идёт по списку групп

    группа1
    группа2
    группа3

    и публикует всё это дело в 1 поток

    далее список групп для второго потока

    группа1
    группа2
    группа3

    А затем идёт список материала, который он будет публиковать.

    ссылка;сообщение

    по ссылке он импортирует контент сайта. Далее он пишет сообщение
    К примеру я введу слово ПУСТО вместо ссылки

    пусто;моё сообщение + ссылка !

    Он напишет слово пусто, контент импортировать не станет.
    Далее сотрёт и напишет - моё сообщение + ссылка



  • @bronshik ресурс {{mail}} настроен так что строки берутся с удалением. т.к. чтение ресурса асинхронная операция (чтобы потоки не читали одну и ту же строку)



  • Покажите пример заполнения тхт файла ?



  • Вот верно.

    как Добавить потоку определение ? Чтобы поток брал именно свои ссылки свои строки



  • @xclsv Как это сделать ?



  • Я лично не очень понимаю что именно нужно)) Классического Массива как например в паскале в басе я не нашел как сделать. Была речь о какой-то базе данных, может поспрашивать что это такое и как делать? Что-то в стиле таблиц ексель наверное?



  • 1 файл тхт 2 потока берут данные именно свои.

    =1https://vk1.com
    =1https://vk2.com
    =1https://vk3.com
    =2https://vk1.com
    =2https://vk2.com
    =3https://vk3.com



  • @freeliman если я правильно понял, то тебе нужно так , вот проект) 0_1485755883169_example.xml



  • @freeliman said in Вертикальная переменная или разделитель:

    1 файл тхт 2 потока берут данные именно свои.

    =1https://vk1.com
    =1https://vk2.com
    =1https://vk3.com
    =2https://vk1.com
    =2https://vk2.com
    =3https://vk3.com

    тебе надо записывать так
    (1 строка для 1 потока) https://vk1.com;https://vk2.com;https://vk3.com
    (2строка для 2 потока) https://vk1.com;https://vk2.com;https://vk3.com
    итд
    затем в каждом потоке получаешь номер этого потока(есть такая функция)
    И обращаешся к номеру строки = номеру потока. Затем парсиш эту строку на переменные.



  • @bronshik Ну ссылки длинные, представляешь какая будет каша?

    Вот мне надо выдернуть пару тройку ссылок из 100 ? А там каша ужасная.
    Такой вариант крайний случай. Но я уверен что есть другое решение разделить потоки



  • @santilo количество ссылок для каждого потока будет разное.



  • Расскажите как помечать лучше ссылки для каждого потока.
    Пусть идёт список, но для каждого потока есть своя переменная, которая будет определять поток.

    И потоков будет неограниченное количество !

    То есть там переменная должна быть и номер потока.

    Взял добавил поток в нагрузку и всё тип топ !



  • @freeliman said in Вертикальная переменная или разделитель:

    @santilo количество ссылок для каждого потока будет разное.

    Потоки будут кушать строки из файла подряд. Как каждый поток сможет понять, свою он строку взял или нет? Каким-то образом подниматься на n строк выше и смотреть, тот ли номер потока используется? Не представляю, как это сделать в bas. Даже если это возможно - это кривое решение.
    Гораздо понятнее и удобнее будет составить подобие таблицы в текстовом файле, как уже описывалось выше.
    поток1,ссылка1,сообщение1
    поток1,ссылка2,сообщение2
    поток1,ссылка3,сообщение3
    поток2,ссылка1,сообщение1
    .
    .
    .
    И т .д.
    В каждую строку записываем одинаковое количество данных, парсим каждую строку по разделителю и используем полученный список обращаясь к нему поэлементно.



  • @freeliman если у тебя каждый поток обрабатывает отдельный аккаунт, то создай для каждого акка свою папку имя которой будет логин аккаунта, и в нее клади все что нужно ссылки, сообщения, куки, я так делал)



  • @freeliman said in Вертикальная переменная или разделитель:

    Расскажите как помечать лучше ссылки для каждого потока.
    Пусть идёт список, но для каждого потока есть своя переменная, которая будет определять поток.

    И потоков будет неограниченное количество !

    То есть там переменная должна быть и номер потока.

    Взял добавил поток в нагрузку и всё тип топ !

    Придется каким-то образом формировать/обрабатывать файл до его использования в скрипте.
    Можно написать скрипт, который сделает это. Но под бесконечное количество потоков как разделить пока не представляю )