Мы создали приложение WPF, которое позволяет транслировать несколько IP-камер в прямом эфире (Mobotix).Это приложение отлично работает при подключении нескольких потоков.Все потоки отображаются правильно и без каких-либо задержек.
Однако, когда мы пытаемся запустить приложение с более чем 20 потоковыми потоками, мы сталкиваемся с проблемами, когда некоторые потоки больше не обновляются, а пользовательский интерфейс приложения WPF отстает.
Мы можем решить эту проблему, уменьшив качество и / или размер прямых трансляций.Но, к сожалению, это неприемлемо, так как изображения не содержат достаточно деталей.
После большой отладки и попыток разными способами отобразить пары, но безрезультатно, мы заметили, что если мы запустим несколько экземпляроводно и то же приложение, которое рендерит ограниченное количество потоков (например, 3 экземпляра по 8 прямых трансляций в каждом), что нет никаких проблем ни с экземплярами, ни с самими потоками камеры.
С этой информацией нам было интересно, почемуразница с одним экземпляром приложения, в котором запущено 24 потока или 3 экземпляра одного и того же приложения, в котором по 8 потоков каждый.
Кто-нибудь здесь знает, что вызывает такое поведение?Есть ли какое-то ограничение памяти для каждого экземпляра приложения?Или какое-то ограничение в GUI-потоке приложения WPF?Может быть, есть и другие вещи, которые мы здесь не видим?
Любая помощь будет высоко оценена!