(WgxConnection_ShouldForceSoftwareForGraphicsStreamClient):C#.NETのWPFアプリケーションがランダムにハングアップ、私は次のライブラリを使用してWPF .NETアプリケーション(.NET 4.5)を書いた
- System.Windows.Interactivity.dll
- Microsoft.Practicesを。 ServiceLocation.dll
- GalaSoft.MvvmLight.Platform.dll
- GalaSoft.MvvmLight.Extras.dll
- GalaSoft.MvvmLight.dll
:
System.Threading.DispatcherTimer
を(すべての200ミリ秒を刻み)- ちょうどDateTime.Nowに、標識に結合された、DateTimeプロパティを設定します。
System.Timers.Timer
(Application.Current.Dispatcher.BeginInvoke
を使用して)(毎秒ティック)テキストボックスに- セットフォーカス、(非同期タスクで)Webサービスからデータを要求
- 更新データグリッドにバインドするICollectionView
アプリケーションは、(午前7時から午後5時まで)〜50のWindows 7マシンワット上で動作します何の問題もなく。それだけでランダムに高いCPU使用率と唯一のアクティブなスレッドにフリーズのみ1のWindows 7マシンで
:WgxConnection_ShouldForceSoftwareForGraphicsStreamClient
Windowsのイベントログにエントリが存在しませんし、これをトリガーにユーザーイベントがありません。
これについては何も見つかりませんWgxConnection...
誰にもアイデアはありますか?
EDIT:
ちょうどスニペットを見つけた "UnsafeNativeMethods.WgxConnection_ShouldForceSoftwareForGraphicsStreamClient();" MediaSystem.cs中: https://referencesource.microsoft.com/#PresentationCore/Core/CSharp/System/windows/Media/MediaSystem.cs
- > wpfgfx_v0400.dll
たぶん "RenderOptions.ProcessRenderMode = RenderMode.SoftwareOnly;"行動を変えることができますか?
GPUに関して、これと他のPCの違いはまだわかりません。 私は、 "IsIndeterminate = true ProgressBar"以外のグラフィック効果は使用しません。バックグラウンド作業が行われている間は表示されます。 は私が原因より良い性能(デフォルトの60fpsの)に20にフレームレートを設定します。Timeline.DesiredFrameRateProperty.OverrideMetadata(... HWレンダリングは実際に私の場合には必要とされている場合、私は疑問に思うそれを無効にする可能性があるでしょう。 、設定: ProcessRenderMode。 –
プログラムは中断することなく毎日実行されますが、それは毎朝朝起きます。問題は、数日おきに発生します... –
fpsまたは実際のグラフィックスカード用のタイマーを使用していますかコマンド? – Slipoch