![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
myendlessness |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 113 Регистрация: 8.8.2008 Репутация: нет Всего: нет |
Есть метод, который сжимает файл, предположим его название Encode(). Как мне оценить время сжатия? и сделать для этого метода ProgressBar? Если не трудно скидывайте литературу на эту тему. Всем спасибо!
|
|||
|
||||
Bestoloch |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 84 Регистрация: 29.6.2009 Репутация: нет Всего: нет |
Нужно отслеживать какую работу выполняет метод за единицу времени, а далее расчет.
|
|||
|
||||
myendlessness |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 113 Регистрация: 8.8.2008 Репутация: нет Всего: нет |
Это нереально, так как данный метод находится в библиотеке, я его только подключаю в программе, грубо говоря в главной программе это всего одна строчка!
|
|||
|
||||
myendlessness |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 113 Регистрация: 8.8.2008 Репутация: нет Всего: нет |
Так со временем я разобрался, Timer оказался не нужным, всё просто и легко:
Теперь осталось понять, что делать с ProgressBar? Это сообщение отредактировал(а) myendlessness - 17.8.2009, 11:20 |
|||
|
||||
mihryak |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 731 Регистрация: 28.4.2007 Где: С-Пб Репутация: 19 Всего: 36 |
||||
|
||||
Heinzz |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 12.12.2008 Где: .net Репутация: 5 Всего: 9 |
Надо оценить время за которое предположительно произойдет сжатие.
Посжимай файлы с разными расширениями, замерь потраченное время, а затем отталкиваясь от формата файла и от его размера можно предположить время операции. Время мерить ты умеешь, ну а прогресбар пусть показывает потраченное время (за максимум возьми оценочное время). Иных путей нет ![]() |
|||
|
||||
myendlessness |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 113 Регистрация: 8.8.2008 Репутация: нет Всего: нет |
Спасибо ребята, что откликнулись, решил отказаться от ПрогрессБар, так как всё равно это будет очень приблезительно, и никакого реального хода процесса оно не будет отображать
![]() Теперь вопрос почти научный, в дополнение к этой теме ![]() Вот есть у меня мой кодер, могу измерять время, а теперь я хочу сравнить его с Rar и Zip, как правильно мне это сделать? То есть выставить их последовательно и сжимать один файл, это не будет совсем правильно, так как я не знаю сколько машинного времени уделяется для каждого из кодеров, тогда следует самому распределять ресурсы? Делать ли это параллельно или последовательно? У кого какие соображения и как это вообще реализовать на С#? |
|||
|
||||
mihryak |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 731 Регистрация: 28.4.2007 Где: С-Пб Репутация: 19 Всего: 36 |
1. приготовь наборы тестовых файлов, хотя бы
- большой текстовый - кучку маленьких текстовых - что-нибудь плохо архивируемое (mp3, avi, тот же рар-зип) - что-нибудь бинарное хорошо сжимаемое (bmp, здоровые exe) - комбинированый контент 2. сделай тестовое приложение, запускающее последовательно каждый архиватор с десяток-другой раз, сравни среднее время сжатия и размеры получившихся архивов |
|||
|
||||
myendlessness |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 113 Регистрация: 8.8.2008 Репутация: нет Всего: нет |
Дело в том, что архивирую я пока только TIF файлы, но суть вопроса немного не в этом, нужно чтобы все архиваторы работали в одинаковых условиях, контент у меня есть, но нужно создать им одинаковые условия, я так понимаю нужно сделать процесс архивации всех кодеров с самым высоким приоритетом, чтобы во время работы кодеров другие задачи не выполнялись и все машинные ресурсы тратились только на работу с кодерами? В таком случае их можно будет "справедливо сравнивать"?
|
|||
|
||||
mihryak |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 731 Регистрация: 28.4.2007 Где: С-Пб Репутация: 19 Всего: 36 |
одинаковых условий ты никогда не добъёшься, их разница обычно компенсируется многократными прогонами
причём, лучше даже брать не просто среднее, а среднеквадратичное значение, чтобы убрать откровенно "провисшие" варианты а с приоритетами особого смылса заморачиваться, думаю, не стоит |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |