Георгий Кузнецов, Таймер нужно реализовывать не через итерацию переменной, а через разницу во времени. Сохраняете время начала работы таймера и при отрисовке вычитайте от текущего времени, замедления не будет
У вас очень абстрактное задание и от этого все проблемы, определите более точно, что должно происходить.
Что значит "открыть html страницу"? Открыть ее для просмотра в браузере, в окне просмотра самого приложения или как файл данных для изменения.
Student2002, Если у вас одна строка одним потоком обрабатывается 1-3 минуты, то это не значит, что 100 потоков выполнят 100 строк за это время. У вас скорее всего ядер не хватит на параллельную обработку такого кол-ва потоков.
По коду:
Примените для примера ConcurrentQueue и выбирайте потоками из него построчно, а в отдельном потоке загружайте туда строки, что должны быть обработаны
32х битное приложение ограничено по памяти в 2GB. Так что сколько не создавайте потоков этот лимит не преодалеть.
Меняйте логику приложения, чтобы не хранить в памяти такой обьем данных или компилите 64битную версию
Так запустите свой импорт в отдельном потоке, а пользователю верните Ok.
Если нужно отслеживание.,то верните ID действия и другими запросами с передачей данного ID отслеживайте статус.
Saboteur, Могут и не кинуть. Но бывало, что у компании менялось руководство и договоренности, что были даны устно, нереставали действовать. Зачем идти на дополнительные риски, когда можно сразу нормально прописать в договоре.
Saboteur, Сейчас я работаю как ИП. Но за свою карьеру наемного сотрудника сталкивался с уймой ситуаций как кидают сотрудников в РФ и не только.
QNA может быть на любом языке, поэтому никто не мешает вам добавить особенности бизнеса на украине или где-то еще. Без голых слов "обычная практика"
Strannyk, Тогда вы подписываетесь на большой риск. Захотел работодатель не платить вам уже после испытательного премию и перестал, чем докажете что обещал платить больше?
В моем понимании "жить" это заниматься любимым делом и обучаться в этом направлении.