| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: Системное программирование > чтение из файла, копирование |
| Автор: yodgik 6.2.2007, 22:11 |
| подскажите как можно реализовать есть файл с ip адресами хочется прочитать пять строк потом по этим 5 ip скопировать какой нить файл. если всё ок то взять следующие 5 адресов и проделать с ними тоже самое. |
| Автор: amg 7.2.2007, 08:43 | ||
| Ну почему люди не хотят писАть по-русски... Не уверен, что правильно понял вопрос. Следующий код читает файл и каждые 5 строк записывает в новый файл с тем же именем и инкрементируемым расширением.
|
| Автор: yodgik 7.2.2007, 13:28 |
| хочется реализовать многопоточность. Тоесть взял 5 ip копирую файло на 1 из 5 скопировалось быстрее взял ещё 1 ip копирую дальше. Может это как то по другому реализовывается подскажите как ? |
| Автор: amg 7.2.2007, 13:55 |
| Бог в помощь, только, IMHO, многопоточность здесь ничего не даст. Она нужна, например, для всяких сетевых дел, когда компьютер ждет и ничего не делает, а здесь, если исходный файл очень большой, скорость будет ограничиваться временем создания огромного количества файлов. |
| Автор: yodgik 7.2.2007, 19:21 |
| ну так здесь один файл может закачаться быстрее чем все остальные |
| Автор: korob2001 20.2.2007, 01:10 | ||
| А почему нужно читать по пять строк из файла? Может лучше прочесть все IP, создать 5 потоков, как только один из потоков освобождается, запускать новый поток с следующим IP и так по до тех пор, пока не пройдём весь список IP адресов? Если конечно, я верно понял условие. Здесь я как-то приводил пример программы, которая ищет одновременно в нескольких файлах. Если интересно, вот эта тема: http://forum.vingrad.ru/index.php?showtopic=80983&view=findpost&p=628501
Думаю, что многопоточность, даст хотябы то, что программа не будет находиться в подвешенном состоянии, от того, что основной поток захватит все доступные ресурсы, для выполнения всех этих операций. В случае с многопоточностью, ресурсы будут равномерно, ну или почти равномерно, распределены между потоками, основной же поток позволит реагировать программе на действия пользователя. |