Аватар для stels009
16 / 15 / 1
Регистрация: 05.04.2011
Сообщений: 426

Ограничение времени на выполнение функции

02.08.2015, 19:20. Показов 13942. Ответов 30
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток.
У меня есть примитивная функция типа
C#
1
2
3
4
5
6
int i = 0;
while(true)
{
    ++i;
    log(i);
}
Так вот мне нужно чтобы данная функция выполнялась не более 2000мс по истечению этого времени нужно сломать цикл break; и нужно учесть то, что данная функция запускается асинхронно в 100а потоках.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.08.2015, 19:20
Ответы с готовыми решениями:

Выполнение функции при наступлении определенного момента времени
Здравствуйте! Появилась задача выполнения каких либо операций при наступлении определенного момента времени, например наступление каждого...

в консоле ввод даты и времени,и при совпадении выполнение функции
Как осуществить?

Ограничение работы функции по времени
Как сделать ограничение по времени? Например если функция выполняется больше 15 секунд то вывести на экран "функция не работает",...

30
 Аватар для LeniumSoft
1454 / 847 / 150
Регистрация: 06.06.2012
Сообщений: 2,370
03.08.2015, 16:19
Студворк — интернет-сервис помощи студентам
Итак!
Вы пытаетесь проверить Proxy из списка на доступность?
0
 Аватар для LeniumSoft
1454 / 847 / 150
Регистрация: 06.06.2012
Сообщений: 2,370
03.08.2015, 17:25
Нус! Посмотрите такой вариант реализации!

Приложил картинку:


На ней видно что чекер работает!
Правда список проксей у вас кривой! Мало рабочих! Или нужно таймаут ставить больше двух минут!

UI при проверке виснуть не будет! Потоки система расчитает сама!
Вложения
Тип файла: 7z Mel.7z (109.7 Кб, 8 просмотров)
2
TheGreatCornholio
 Аватар для Woldemar89
1255 / 733 / 285
Регистрация: 30.07.2015
Сообщений: 2,408
03.08.2015, 18:24
как сделать управляемую задержку
Почитай тему. Я чото там отвечал поводу ограничения времени выполнения примитивным способом.
Вообще можно использовать:

C#
1
Thread.Join(2000); //ждать 2 сек, пока поток завершится, если еще не завершился - остановится

Не по теме:


Но то, как ты вопросы задаешь, это полный ******, у меня слов нет просто :)
Особенно, про "примитивную функцию". У меня просто баттхерт случился какойто.

0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
03.08.2015, 19:18
stels009, класс Ping я так понял не устроил?

Алсо для желающих, запустить любую функци с таймаутом можно так:
C#
1
2
3
4
5
    public static async Task<bool> DoOrKill(Action action, TimeSpan timeout)
    {
        var task = Task.Run(action);
        return await Task.WhenAny(Task.Run(action), Task.Delay(timeout)) == task;
    }
true если успешно, false если отвалилась по таймауту.
1
 Аватар для LeniumSoft
1454 / 847 / 150
Регистрация: 06.06.2012
Сообщений: 2,370
03.08.2015, 20:03
Вот такой вариант пока лидирует по скорости!

Создаёт для обработки всего 7 потоков!
Вложения
Тип файла: 7z Mel.7z (108.2 Кб, 6 просмотров)
1
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
03.08.2015, 21:53
LeniumSoft, веселый ад

Так а в чем задача-то, просто пингануть толпу сайтов или что?
0
 Аватар для LeniumSoft
1454 / 847 / 150
Регистрация: 06.06.2012
Сообщений: 2,370
03.08.2015, 23:02
Цитата Сообщение от Psilon Посмотреть сообщение
Так а в чем задача-то, просто пингануть толпу сайтов или что?
ТС хочет на почтовые ящики отправлять инфу через кучу proxy.
Я помогаю с отбором проксей! Кормим огромный список с адресами, из него нужно выбрать только активные.
Активность соответственно определяем, загружая google через прокси. Ping не поддерживает proxy, поэтому не катит!

Добавлено через 1 минуту
Цитата Сообщение от Psilon Посмотреть сообщение
веселый ад
Мой там только ProxyManager.cs ну и его вызов из Form3
Остальное не моё!!!
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
04.08.2015, 00:52
Цитата Сообщение от LeniumSoft Посмотреть сообщение
Мой там только ProxyManager.cs ну и его вызов из Form3
Остальное не моё!!!
я уж испугалсо

Цитата Сообщение от LeniumSoft Посмотреть сообщение
ТС хочет на почтовые ящики отправлять инфу через кучу proxy.
Я помогаю с отбором проксей! Кормим огромный список с адресами, из него нужно выбрать только активные.
Активность соответственно определяем, загружая google через прокси. Ping не поддерживает proxy, поэтому не катит!
Кстати поиск тоже рулит
Пинг сайта через прокси
0
 Аватар для LeniumSoft
1454 / 847 / 150
Регистрация: 06.06.2012
Сообщений: 2,370
04.08.2015, 09:56
Цитата Сообщение от Psilon Посмотреть сообщение
Кстати поиск тоже рулит
Смотрел я в сторону пинга!
Многие прокси на пинг отвечают, но сайт через себя не отдают!
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
04.08.2015, 16:17
LeniumSoft, так там не пинг Это только тема так называется.
0
 Аватар для LeniumSoft
1454 / 847 / 150
Регистрация: 06.06.2012
Сообщений: 2,370
04.08.2015, 17:10
Цитата Сообщение от Psilon Посмотреть сообщение
Это только тема так называется.
Не усмотрел я! Сорри!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.08.2015, 17:10

Прервать выполнение функции через определенный промежуток времени
Друзья, здравствуйте. Есть некоторая функция, которая может отработать за несколько секунд, а может черт знает за сколько. Хочется...

Приостановить выполнение функции до наступления определённого момента времени
Допустим есть задача вывести сообщение ХХХ ровно 10 декабря 2017 года в 16:10. Как это реализовать? Идея создать цикл перед выведением...

Ограничение группы пользователей на выполнение команд по SSH
Здравствуйте! Есть группа gusers, в ней много юзеров, которые имеют доступ к серверу по SSH, да и вообще имеют права на выполнение...

ограничение по времени 20 мс
Здравствуйте, подскажите пожалуйста что в данном простом коде занимает наибольшее количество времени ( ограничение по времени 20 мс...

Ограничение времени ввода.
нада дать юзеру 10 сек на ввод значения Х. Еси он провтыкал 10 сек, то стандартно Х = 0. в худшем случае дать возможность 10 секунд...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
31
Ответ Создать тему
Опции темы

Новые блоги и статьи
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru