Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Отправка смс с разными интервалами времени / 10 сообщений из 10, страница 1 из 1
17.08.2016, 11:20
    #39293111
Retviz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка смс с разными интервалами времени
Доброго времени суток!
Ребята, прошу помощи в "написании" алгоритма выполнения задачи:
Имеется 3 адресата, первому нужно отправлять смс каждые 2 часа, второму - 12 минут, третьему - 1 час 20 минут.

Отправлять всем через один промежуток времени(используя таймер) у меня получается, а вот придумать как реализовать вышеописанное - мозг пока не может. Сладкое, энергетики и бабы не помогают(

PS: язык - C#
...
Рейтинг: 0 / 0
17.08.2016, 11:23
    #39293115
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка смс с разными интервалами времени
Три таймера не предлагать?
...
Рейтинг: 0 / 0
17.08.2016, 11:26
    #39293117
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка смс с разными интервалами времени
1. Заводишь каждому получателю время следующей отправки (send_next).
2. Находишь минимальное send_next среди всех, ставишь таймер на это время (send_next - now).
3. Во время сработки таймера проверяешь send_next <= now, отправляешь, меняешь send_next
4. переход на п.2
...
Рейтинг: 0 / 0
17.08.2016, 11:28
    #39293121
Retviz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка смс с разными интервалами времени
wadmanТри таймера не предлагать?
и на каждого последующего адресата заводить по таймеру?)
...
Рейтинг: 0 / 0
17.08.2016, 11:29
    #39293123
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка смс с разными интервалами времени
Retviz,

Крутить 1 таймер с малым интервалом (1-3-5 минут) и проверять наступление "часа Ч" для каждого клиента.
Т.е. ставим время следующей отсылки (для каждого адресата) начиная с текущего в "текущее + интервал в минутах", начинаем крутить таймер и проверяем, не прошло ли время ("текущее время - время отсылки"<=0). Если прошло - отсылаем и передвигаем время следующего запуска для этого адреса вперед (опять в "текущее+интервал").
...
Рейтинг: 0 / 0
17.08.2016, 11:31
    #39293125
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка смс с разными интервалами времени
RetvizwadmanТри таймера не предлагать?
и на каждого последующего адресата заводить по таймеру?)
А в чем проблема? Массива на хендлы жалеешь?

Тогда организуй сам "таймер" отдельным потоком, который (например) будет выбирать ближайшее время из таблицы (sql) и до этого времени будет засыпать (sleep). Проснулся, отправил сообщение и уснул до следующего времени.
...
Рейтинг: 0 / 0
17.08.2016, 11:37
    #39293130
Retviz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка смс с разными интервалами времени
Спасибо ребят большое, представление как нужно сделать отложилось в голове)
Пошел реализовывать..
...
Рейтинг: 0 / 0
17.08.2016, 12:54
    #39293234
SashaMercury
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка смс с разными интервалами времени
Dima T1. Заводишь каждому получателю время следующей отправки (send_next).
2. Находишь минимальное send_next среди всех, ставишь таймер на это время (send_next - now).
3. Во время сработки таймера проверяешь send_next <= now, отправляешь, меняешь send_next
4. переход на п.2

А если будет два минимальных времени? 10 звонок 2 адресат совпадет с 1 первого адресата
...
Рейтинг: 0 / 0
17.08.2016, 13:09
    #39293246
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка смс с разными интервалами времени
SashaMercuryА если будет два минимальных времени? 10 звонок 2 адресат совпадет с 1 первого адресата
Там речь про СМС, а не звонки, СМСок можно хоть 10 штук послать за одно срабатывание таймера.
...
Рейтинг: 0 / 0
17.08.2016, 19:39
    #39293522
eNose
Участник
[не активирован]
[не одобрен]
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка смс с разными интервалами времени
Dima TSashaMercuryА если будет два минимальных времени? 10 звонок 2 адресат совпадет с 1 первого адресата
Там речь про СМС, а не звонки, СМСок можно хоть 10 штук послать за одно срабатывание таймера. В любом случае СМС добавляются в одну очередь.
и другой процесс по одному их отправляет.
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Отправка смс с разными интервалами времени / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]