Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
17 / 14 / 7
Регистрация: 04.02.2017
Сообщений: 486

Приостановка метода на время

20.02.2019, 15:08. Показов 1839. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Возможно ли такое, приостоновить метода на время при этом не входя в этот метод и чтоб основной поток продолжался выполнятся?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.02.2019, 15:08
Ответы с готовыми решениями:

Приостановка цикла на время
У меня есть stringlist с окончаниями адреса страницы в цикле for я последовательно загружаю страницу, затем вывожу результаты, ...

Приостановка процесса на определенное время
Кто знает, как организовать приостановку процесса на определенное время другого параллельного?

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

12
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16140 / 11264 / 2888
Регистрация: 21.04.2018
Сообщений: 33,109
Записей в блоге: 2
20.02.2019, 15:20
Цитата Сообщение от FerrariF70 Посмотреть сообщение
Возможно ли такое, приостоновить метода на время при этом не входя в этот метод и чтоб основной поток продолжался выполнятся?
Что-то Вы путано изложили.
Приостановить - это значит в метод уже вошли и он работает.
Что тогда понимать под "не входя в этот метод"?
0
Фрилансер
805 / 312 / 148
Регистрация: 13.02.2019
Сообщений: 1,071
20.02.2019, 15:22
Цитата Сообщение от FerrariF70 Посмотреть сообщение
Возможно ли такое, приостоновить метода на время при этом не входя в этот метод и чтоб основной поток продолжался выполнятся?
Самый простой способ - запустить метод в другом потоке и, при необходимости, приостанавливать работу потока.
0
17 / 14 / 7
Регистрация: 04.02.2017
Сообщений: 486
20.02.2019, 15:29  [ТС]
Цитата Сообщение от Элд Хасп Посмотреть сообщение
Что тогда понимать под "не входя в этот метод"?
например мне в этот метод не надо входить на две секунды. У меня просто в WPF элементы движутся.
0
880 / 559 / 291
Регистрация: 21.11.2012
Сообщений: 1,554
20.02.2019, 15:36
FerrariF70,

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
static void Main(string[] args)
        {
            var t = DoSomethingAsync();
            Console.WriteLine("DoSomething");
 
            System.Threading.Thread.Sleep(1000);
            Console.WriteLine("Main thread is working...");
 
            t.Wait();
            Console.WriteLine("Result async: {0}", t.Result);
 
            Console.ReadLine();
        }
 
 
        public static async Task<int> DoSomethingAsync()
        {
            await Task.Delay(5000);
            return 1;
        }
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16140 / 11264 / 2888
Регистрация: 21.04.2018
Сообщений: 33,109
Записей в блоге: 2
20.02.2019, 16:03
Цитата Сообщение от FerrariF70 Посмотреть сообщение
например мне в этот метод не надо входить на две секунды. У меня просто в WPF элементы движутся.
Всё равно не понятно.

Вот вам надо произвести какое-то действие (допустим, перемещение элементов).

Метод который надо "приостановить" уже выполняется в это время в основном потоке?
Или он может выполниться, но его не надо выполнять пока происходит перемещение?
Или его надо во время перемещения выполнять в другом потоке?
Почему изначально не запустить его в другом потоке, что бы он не мешал обновлению WPF элементов?
0
17 / 14 / 7
Регистрация: 04.02.2017
Сообщений: 486
20.02.2019, 22:13  [ТС]
Цитата Сообщение от Элд Хасп Посмотреть сообщение
Или он может выполниться, но его не надо выполнять пока происходит перемещение?
Да

я решил эту проблему, но без потоков просто не знал как подойти лучше к этой задачи пробовал разные варианты.
0
21.02.2019, 01:54

Не по теме:

да простят меня модераторы, но этоужснах

0
 Аватар для Рядовой
1524 / 914 / 329
Регистрация: 17.05.2015
Сообщений: 3,438
22.02.2019, 18:54
FerrariF70, напишите что должно делать приложение
0
17 / 14 / 7
Регистрация: 04.02.2017
Сообщений: 486
22.02.2019, 19:03  [ТС]
Рядовой уже решил задачу. Мне надо было просто например на две секунды заморозить метод при этом не входя в этот метод но чтоб программа продолжала работать я просто незнаю если такой способ это реализовать, но я уже без этого обошёлся так что не ломайте голову но если знаете такой способ буду рад его увидить заранее спасибо!
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16140 / 11264 / 2888
Регистрация: 21.04.2018
Сообщений: 33,109
Записей в блоге: 2
22.02.2019, 19:24
Цитата Сообщение от FerrariF70 Посмотреть сообщение
но если знаете такой способ буду рад его увидить
Я как понял из поста #7 вам надо при определённых условиях не вызывать работу какого-то метода.
Самый простой использовать флаг на разрешения исполнения.
При определённых действиях, когда метод не должен выполняться, флаг сбрасывается.
В самом методе, сразу после входа проверяется флаг если он сброшен, то выход из метода или циклическая проверка с задержкой на 1-2 секунды.
1
17 / 14 / 7
Регистрация: 04.02.2017
Сообщений: 486
22.02.2019, 19:33  [ТС]
это тоже вариант
0
 Аватар для Рядовой
1524 / 914 / 329
Регистрация: 17.05.2015
Сообщений: 3,438
22.02.2019, 19:38
Цитата Сообщение от FerrariF70 Посмотреть сообщение
на две секунды заморозить метод
C#
1
2
3
4
5
async void Run()
        {
            await Task.Delay(2000);
            //TODO
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.02.2019, 19:38
Помогаю со студенческими работами здесь

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

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

Зависание во время выполнения метода
Добрый день. Есть следующий код: if (openFileDialog1.ShowDialog() == DialogResult.OK) { ...

Оценить время работы метода
Необходимо оценить время работы метода. Но он почему-то не хочет этого делать.:cry:Как я поняла, он не может конвертировать. Подскажите как...

Время выполнения метода Гаусса
Привет, если имеется матрица A и её размер nxn то время выполнения O(n^3), какое будет время выполнения если A содержит n элементов? Тоже...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru