Название: Нужно ли использовать нитки? Отправлено: phpCoder от Май 13, 2015, 12:15 Добрый день.
Есть класс, который загружает файлы на FTP. Задача эта очень долгая по времени. И порой нужно взять и остановить работу (совсем завершить или нажать на паузу). Вопрос: нужно ли тут использовать нитки? И если нужно, то как? До сего момента с потоками не работал. Если не сложно, можно пример того, как запускать, ставить паузу и останавливать, чтобы потом от этого отталкиваться. Название: Re: Нужно ли использовать нитки? Отправлено: Пантер от Май 13, 2015, 12:20 Если будешь качать ассинхронно, то не надо никаких потоков.
Название: Re: Нужно ли использовать нитки? Отправлено: phpCoder от Май 13, 2015, 12:38 Кроме FTP есть похожие длительные задачи. И тут интересует именно - запуск, пауза, завершение.
Название: Re: Нужно ли использовать нитки? Отправлено: Old от Май 13, 2015, 12:50 Вопрос: нужно ли тут использовать нитки? Нитки нужны для параллельного выполнения.Для этого: Есть класс, который загружает файлы на FTP. Задача эта очень долгая по времени. И порой нужно взять и остановить работу (совсем завершить или нажать на паузу). они не обязательны. Но при желании их туда можно воткнуть. :) Название: Re: Нужно ли использовать нитки? Отправлено: phpCoder от Май 13, 2015, 12:53 Хорошо, если нитки тут не нужны (не только FTP), тогда как делать паузу выполнения. И завершение как?
Вон, когда отлаживаем приложение в Qt - там на красный квадратик нажал, и приложение завершилось. Название: Re: Нужно ли использовать нитки? Отправлено: Old от Май 13, 2015, 12:55 Хорошо, если нитки тут не нужны (не только FTP), тогда как делать паузу выполнения. И завершение как? Это шуточный вопрос?Вон, когда отлаживаем приложение в Qt - там на красный квадратик нажал, и приложение завершилось. Сделайте и у себя в приложении красный квадратик. ;) Название: Re: Нужно ли использовать нитки? Отправлено: Bepec от Май 13, 2015, 13:22 И код красного квадратика выложите, меня тоже заинтересовало.
Название: Re: Нужно ли использовать нитки? Отправлено: Пантер от Май 13, 2015, 13:26 Вот синий не срабатывает, а красный сразу останавливает. Сам видел.
Название: Re: Нужно ли использовать нитки? Отправлено: qate от Май 13, 2015, 13:57 http://qt-project.org/wiki/Threads_Events_QObjects
команды (пауза, стоп, ...) между потоками кидай сигналами\слотами Название: Re: Нужно ли использовать нитки? Отправлено: phpCoder от Май 13, 2015, 14:19 Так все-таки потоки использовать?
Название: Re: Нужно ли использовать нитки? Отправлено: Old от Май 13, 2015, 14:43 Так все-таки потоки использовать? Киньте монетку. :)Вы спрашиваете "использовать"? А мы понятия не имеем, какие задачи вы собераетесь решать. Было ваше уточнение про загрузку файла, вам сразу ответили, что для этого нитки не нужны. А что можно сказать про "другие длительные задачи" и "как поставить им паузу"? Название: Re: Нужно ли использовать нитки? Отправлено: Igors от Май 13, 2015, 14:48 Так все-таки потоки использовать? Не знаю подробностей FTP, но при I/O использование 2 и более ниток часто малоэффективно, и тратить на него время не стоит. Скорость все равно упирается в устройство, др словами ядрам нечего делать когда все льется в одну дырочку (ну или выливается). Вот если есть еще какая-то приличная обработка - тогда др дело |