Как читать файл в процессе выполнения скрипта, а не при начальной загрузке
-
Всем привет. Есть вопрос по работе с он OnApplicationStart. Допустим я в данной функции обрабатываю почту и сохраняю индексы писем которые мне нужны в файл indexofmail.txt. Дальше запускается основной скрипт в многопотоке, который должен считывать этот файл indexofmail.txt и скачивать письма(и дальнейшие действия). Но вся проблема в том, как я понял, что начально файл пустой и функция Мейн берет данные с пустого файла при самом запуске, а не данные которые уже были туда записаны.
Также если мне в процессе нужно будут некоторые буферные данные, которые в процессе исполнения скрипта будут пополнятся и должны оттуда считываться....
Как с этим работать, чтобы данные реал тайм считывались?
-
@seedgg воспользуйтесь действиями из раздела файловая система
-
@DrPrime Так я просто там не вижу, что использовать, чтобы оно в многопотоке работало, читать файл? так это совсем не то. Весь смысл многопотока, чтобы считывало файл поэлементно. Теми ресурсами что в разделе "файловая система" никак не реализуешь.
-
Ну лично я понимаю, что функция OnApplicationStart, служит для обработки данных перед основным скриптом, и получить данные можно только в список или переменную....но список и многопоток как то не очень "дружат". Для многопотока нужна работа с "ресурсами".
-
@seedgg создайте ресурс в самом скрипте в онапликейшн старт и добавляйте туда данные, а в потоках работайте с ресурсом
-
@DrPrime Если я создам ресурс в OnApplicationStart, он будет в памяти? или будет реальным файлом, хотя там не указывается адрес сохранения? И в основном потоке мне как-то нужно через глобальные переменные его вызывать?
-
@seedgg он будет в памяти, как обычный ресурс. Пользоваться ним можно так же как и созданным вне скрипта
-
@DrPrime Хорошо, тогда как мне сделать импорт списка в тот созданый ресурс? если есть только "Записать Список В Файл". Как мне записать список в созданный ресурс?
-
@seedgg через forreach и добавить в ресурс
-
@DrPrime большое спасибо. Действительно, это все сработало, но как на меня, это очень увеличивает время работы. Если там данных мало, то форич в ресурс будет не очень долгим.....но если там 10000 и больше елементов....так это можно чёкнутся. Еще раз спасибо за потраченное время на пояснение. Если бы можно было бы сразу обрабатывать данные, как на меня, было бы логичнее и проще. Ну это все на усмотрение разработчика. Потому что я не программист и просто следую логике среднестатистического юзера.
-
@seedgg forreach работает быстро в запуске, так что об этом можете не переживать. Действия ресурс в список и список в файл работают по тому же принципу.
-
Спасибо еще раз! Скорее всего Вы правы. Все работает, разобрался.