Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.15.143.207] |
|
Сообщ.
#1
,
|
|
|
Добрейшего времени суток, уважаемые!
Очень мало использую в своей работе шаблоны. Понимаю, мой косяк, хочу найти для себя ощутимый профит. А вопрос по сути простой - каким образом управлять (прерывать, приостанавливать, продолжать) исполнение операций типа sort, unique в программе? Пример с потолка (но важный по этому вопросу): 1) Я объявил и реализовал шаблон Film 2) В программе я реализовал оператор сложения двух Film 3) Этот оператор, допустим, работает 2 часа Хочу интерактивно сделать паузу спустя 15 мин. Каковы возможные варианты реализации? Как принято поступать в таком случае? |
Сообщ.
#2
,
|
|
|
Что то никак не могу понять причем тут шаблоны, сложения двух Film, sort и unique?
Добавлено Цитата JoeUser @ Хочу интерактивно сделать паузу спустя 15 мин. Каковы возможные варианты реализации? Ставь таймер и проверяй - если 15 минут истекли - пауза. |
Сообщ.
#3
,
|
|
|
JoeUser, вы мне мозг сломали. Каким образом связаны шаблоны, sort, unique, оператор сложения, время работы операций, паузы?
Что вы понимаете под паузой? Что конкретно должно происходить? |
Сообщ.
#4
,
|
|
|
Цитата D_KEY @ JoeUser, вы мне мозг сломали. Не тебе одному. |
Сообщ.
#5
,
|
|
|
KILLER, D_KEY, а-б-и-с-ь-н-я-ю
Допустим, есть кусок кода отсюда: std::sort (myvector.begin()+4, myvector.end(), myfunction); ... который выполняется 2 часа. Есть необходимость спустя 15 мин после начала его выполнения его приостановить и вывести промежуточные результаты его выполнения. Как? Вывод опустим. Как приостановить, как продолжить? Без участия потоков естественно. Добавлено Цитата KILLER @ Ставь таймер и проверяй - если 15 минут истекли - пауза. Я вызываю стандартную функцию STL, к примеру, std::sort .... где ставить, где проверять? |
Сообщ.
#6
,
|
|
|
В предикате.
|
Сообщ.
#7
,
|
|
|
Цитата Qraizer @ В предикате. А если используется такая конструкция: std::sort (myvector.begin(), myvector.begin()+333); Только выносить в отдельный поток и потоком управлять? Добавлено Add: Все, спасибо, разобрался. |