powered by simpleCommunicator - 2.0.18     © 2024 Programmizd 02
Map
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Интересное поведение приложения.
5 сообщений из 5, страница 1 из 1
Интересное поведение приложения.
    #40103389
ZenForever
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день
Столкнулся с непонятной ситуацией
Есть собственное написанное приложение Net Core5 WPF
Параллельно запускаю в другой программе не .NET, например выгрузку базы сохранение на диск.
И в этот момент мое приложение как будто ловит мороз никакие команды в интерфейсе не реагируют до тех пор, пока в параллельном приложении не закончится выгрузка после все мои нажатии в быстром порядке начинают отрабатывать.

Ладно бы если весь компьютер подвисал, но другие программы прекрасно работают в этот момент.
Подскажите в какую сторону посмотреть, даже не знаю как правильно запрос в поиск оформить все что выдает это именно зависание в самом приложении при каких-то длительных операциях, а у меня получается влияют сторонние приложения.
...
Рейтинг: 0 / 0
Интересное поведение приложения.
    #40103405
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZenForever,

скорее всего, ты запускаешь внешнюю программу синхронно и ожидаешь её завершения. в этот момент основной поток, который отвечает за перерисовку и обработку ввода в твоем wpf приложении занят тем, что ждет, когда Process завершится и ничего больше не делает. я обычно оборачиваю запуск Process в Async операцию, для этого даже не нужно городить потоки. Просто создай TaskCompletionSource<int> или с более сложный подтипом, а в событии Process.Exit, задай ему результат выполнения процесса. Это будет сигналом для Awaiter'а, что ждать больше не нужно. А затем вызови это асинхронно. Всё должно отлично работать. Но тебе надо будет в WPF интерфейсе (возможно) сделать доработки, в плане состояния объектов.
если сам не умеешь, просто погугли про Process.RunAsync\Process.StartAsync, наверняка уже написано 100500 раз, задача тривиальная.
...
Рейтинг: 0 / 0
Интересное поведение приложения.
    #40103411
ZenForever
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Roman Mejtes,
Немного не поняли меня, внешнюю программу я запускаю не из своего приложения, а просто отдельно
То есть мое приложение и некая программа никак между собой не связанны вообще
Если простым примером
Например открыл Word печатаю текст переключился например на MS SQL Studio запустил выполнение архива базы пока архив выполняется например 3 минуты переключился в Word и ничего напечатать не могу окно как буд- то в заморозке и вот MS SQL Studio закончило выгрузку в Worde Все что набирал начинает быстро появляется

Вот мое приложение условно как Word в заморозке
Хотя если открыть в этот момент Блокнот или другой текстовый редактор то все прекрасно набирается.
...
Рейтинг: 0 / 0
Интересное поведение приложения.
    #40103412
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
возможно какие то mutex'ы или semaphore'ы?
возможно запускаемый процесс переключает приоритет режима реального времени, остальные программы не тормозят при этом?
как вариант: в вашей программе WPF где то выполняется в цикле запрос в базу, а программа которую вы запускаете, открывает транзакцию на длительное время и программа WPF зависает.
...
Рейтинг: 0 / 0
Интересное поведение приложения.
    #40103437
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если WPF-приложение тоже работает с той же базой, что и эта "другая программа", то смотреть блокировки в базе.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Интересное поведение приложения.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (1): Анонимы (1)
Читали форум (1): Анонимы (1)
Пользователи онлайн (7): Анонимы (5), Yandex Bot 4 мин., Bing Bot 7 мин.
x
x
Закрыть


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